Как перевернуть Map, чтобы ключ стал значением, а значение ключом?
Student student1 = new Student("Ivan", "Ivanov");
Student student2 = new Student("Nikolay", "Petrov");
Student student3 = new Student("Kirill", "Antipov");
Course matematic = new Course("Matematic");
Course philosophy = new Course("Philosophy");
Course english = new Course("English");
Course physics = new Course("Physics");
Course franch = new Course("Franch");
Map<Student, List<Course>> education = new HashMap<Student, List<Course>>();
education.put(student1, Arrays.asList(matematic, english, philosophy));
education.put(student2, Arrays.asList(matematic, english, physics));
education.put(student3, Arrays.asList());
Совсем не понимаю, как это возможно осуществить, не создавая новую карту.
Источник: Stack Overflow на русском