У меня возникли проблемы с попыткой написать метод для возврата объекта с наименьшим объемом в универсальном списке ArrayList. Вот рекомендации, которые мне дали для написания кода:
min () — этот метод принимает ArrayList ограниченного универсального типа, который допускает только объекты Shape и их подклассы. - Метод должен возвращать объект с минимальным объемом из списка объектов.
Но я не совсем уверен, правильно ли я его выполнил. Есть ли способ использовать Collections.min (и Collections.max, так как мне тоже нужно написать метод максимального объема)? Я получаю связанную ошибку несоответствия, говорящую: универсальный метод min(Collection) типа Collections неприменим для аргументов (ArrayList). Выведенный тип Shape не является допустимой заменой ограниченного параметра >
Мой класс Shape — это просто интерфейс с функцией getVolume(); метод, в котором другие мои классы (сферы, эллипсоиды и т. д.) переопределяют этот метод:
public interface Shape {
public double getVolume();
}
И вот мой метод min (в другом классе с другими методами), с которым у меня проблемы:
public static <T> T min() {
ArrayList<? extends Shape> list;
T min = Collections.min(list));
return min;
compareTo()
. вот документ для сопоставимого docs.oracle.com/javase /7/docs/api/java/lang/Comparable.html - person Justin Mitchell   schedule 17.04.2014