Есть такой метод в классе Num
public Comparable maximumElement(List list){
return Collections.max(list);
}
В другом классе во время обращения к нему таким способом
new Num<>(Collections.emptyList()).maximumElement(Arrays.asList(new Person(), new Person()));
я получаю
Exception in thread "main" java.lang.ClassCastException: Test$1Person cannot be cast to java.lang.Comparable
Подскажите, как сделать так, чтобы метод maximumElement() мог принимать такие параметры.
Дело в том, что метод Collections.max(...) принимает в качестве аргумента коллекцию, элементы которой реализуют интерфейс Comparable, что логично - чтобы получить максимальный элемент, нужно уметь сравнивать эти элементы.
Для этого исправьте класс Person, добавив реализацию интерфейса Comparable и метода с сигнатурой public int compareTo(Person o).
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники