У меня есть карта с типом перечисления в качестве ключа и Double в качестве значения. Я хочу сортировать это на основе двойных значений. Поэтому я получил набор записей и хочу использовать Collections.sort()
со компаратором. У меня есть следующий код для компараторакомпаратор для Map.Entry <K,V>
class ScoreComparator<Map.Entry<K, V>> implements Comparator<Map.Entry<K, V>> {
public int compare(Map.Entry<K, V> o1, Map.Entry<K, V> o2) {
return o1.getValue().compareTo(o2.getValue());
}
}
я получаю следующее сообщение об ошибке
Syntax error on token ".", extends expected (line 1)
.The type parameter Map is hiding the type Map<K,V> (line 1)
.- Из-за вышеупомянутых двух ошибок K и V не могут быть разрешены к типу (строки 3,4).
Я не могу разрешить это. Любая помощь высоко ценится. Заранее спасибо.
@CostiCiudatu, нет, что не работает. Я получаю «Тип ScoreComparator должен реализовать унаследованный абстрактный метод. Компаратор> .compare (Map.Entry , Map.Entry )" Ошибка. Я реализую метод, как показано в приведенном выше коде. –
Raghava
Вы правы, я отредактировал свой ответ ниже, чтобы исправить это, и все еще держите компаратор как универсальный, как вы это предполагали. –