Невозможно создать Hashset с CustomComparator - PullRequest
0 голосов
/ 02 февраля 2019

Я получаю ошибку ниже при создании Hashset / Hashmap с CustomComparator.Я считаю, что синтаксис правильный, но я не уверен, почему он выдает ошибку.Пожалуйста, помогите.

enter image description here enter image description here enter image description here

1 Ответ

0 голосов
/ 02 февраля 2019

HashMap и HashSet НЕ отсортированные коллекции, поэтому нет конструктора, который бы принимал Comparator.Вместо этого вы должны использовать TreeSet или TreeMap, который содержит перегруженный конструктор, чтобы получить Comparator.Таким образом, код должен быть исправлен следующим образом.

Map<Student, String> empMap = new TreeMap<>(new MyCustComparator());
Set<Student> set = new TreeSet<>(new MyCustComparator());
...