import java.io.PrintStream; import java.util.Scanner; import java.util.Map; import java.util.TreeMap; import cse1020.sport.*; public class TestA { public static void main(String[] args) { Scanner input = new Scanner(System.in); PrintStream output = System.out; // Part 1: 2 marks // 1 mark for catch // 1 mark for output try { BasketballTeam bball = new BasketballTeam("Montreal Dunk", null); } catch (NullPointerException e) { output.println(e.getMessage()); } // Part 2: 3 marks // 1 mark for prompt // 1 mark for reading the input (trim is optional) // 1 mark for creating the TennisPlayer output.print("Enter the name of tennis player: "); String name = input.nextLine().trim().toLowerCase(); TennisPlayer p = new TennisPlayer(name); // Part 3: 2 marks // 1 mark for prompt // 1 mark for reading the input output.print("How many games has " + name + " played? "); int num = input.nextInt(); // Part 4: 1 mark for (int i = 0; i < num; i++) { output.print("*"); } output.println(); // Part 5: 2 marks // 1 mark for SportFactory.getGamesPlayed() // 1 mark for put Map gamesPlayed = SportFactory.getGamesPlayed(); gamesPlayed.put(p, num); // Part 6: 3 marks // 1 mark for creating both maps // 1 mark for instanceof // 1 mark for putting into maps Map team = new TreeMap(); Map indi = new TreeMap(); for (Sport s : gamesPlayed.keySet()) { if (s instanceof TeamSport) { TeamSport t = (TeamSport) s; team.put(t.getName() + ":" + t.getRoster().toString(), gamesPlayed.get(s)); } else { indi.put(s.getName(), gamesPlayed.get(s)); } } // Part 7: 1 mark output.println("Team sports:"); for (String s : team.keySet()) { output.println(s + ":" + team.get(s)); } output.println(); // Part 8: 1 mark output.println("Individual sports:"); for (String s : indi.keySet()) { output.println(s + ":" + indi.get(s)); } } }