Way to Reproduce: 1. Run Main.java inside the folder Default 2. Input "1" in the console for choosing solver mode 3. Input "1" in the console for choosing game level Actual result: Exception in thread "main" java.lang.Error: Unresolved compilation problems: Cannot infer type arguments for HashMap<> Cannot infer type arguments for HashMap<> at Puzzle.PuzzleState.<init>(PuzzleState.java:24) at Puzzle.Puzzle.<init>(Puzzle.java:54) at Puzzle.UI.SolverModeController.<init>(SolverModeController.java:14) at Puzzle.UI.SolverMode.<init>(SolverMode.java:31) at Puzzle.UI.GameFlowFactory.getGameFlow(GameFlowFactory.java:6) at Puzzle.UI.Main.main(Main.java:34) at Default.Main.main(Main.java:5) Expect Result: No error shown
Bug is confirmed
In PuzzleState.java, on line 24 and 25, HashSet should be used instead of HashMap. Modification of code: public PuzzleState(ArrayList<String> landA, ArrayList<String> landB, int boatPos) { this.landA = landA; this.landB = landB; this.boatPos = boatPos; hashLandA = new HashSet<>(landA); hashLandB = new HashSet<>(landB); }