У меня довольно большая проблема с созданием общего метода для заказа. На данный момент у меня есть эта функция:Guava generic для заказа
public <T> T orderAscending(Function<?, ? extends Comparable> function, Iterable<? extends LinkedList<?>> sortingList) {
return Ordering.natural().onResultOf(function).sortedCopy(sortingList);
}
Первый параметр этой функции создается таким образом:
public static Function<ParkingWebApiDTO, Date> getSortActiveParkingsByStartDate() {
Function<ParkingWebApiDTO, Date> getStartDateFunction = new Function<ParkingWebApiDTO, Date>() {
@Override
public Date apply(ParkingWebApiDTO parkingWebApiDTO) {
return parkingWebApiDTO.getStartDate();
}
};
return getStartDateFunction;
}
и второй один LinkedList с некоторыми пользовательского объекта в нем (List<MyObject> test = new LinkedList<MyObject>()
).
Пожалуйста, помогите мне исправить этот общий метод orderAscending
. Большое спасибо за помощь.
Вы забыли упомянуть о том, какова актуальная проблема ... –
Проблема с компиляцией :) –
Не могли бы вы затем поделиться с нами ошибкой компиляции? Вероятно, это еще одна проблема с типичным типом вывода. Или может быть, что результат 'sortedCopy()' ('List', из 'Iterable ' ввода) возвращается как 'T' ... –