Дан следующий список объектов:
final List<BusinessUnit> unorderedUnits = Arrays.asList(
new BusinessUnit("OTHER"),
new BusinessUnit("BUELL"),
new BusinessUnit("HARLEY_DAVIDSON"),
new BusinessUnit("VINTAGE")
);
Я пытаюсь изменить порядок списка выше, чтобы они были в порядке "HARLEY_DAVIDSON", "VINTAGE", "BUELL", все остальные объекты в списке.
Я пытался добиться этого с помощью:
unorderedUnits.sort(comparingInt(f -> asList("HARLEY_DAVIDSON", "VINTAGE", "BUELL").indexOf(f.getName())));
Результат этого:
result.forEach(r -> System.out.println(r.getName()));
OTHER
HARLEY_DAVIDSON
VINTAGE
BUELL
Обратите внимание, что элемент OTHER
стоит перед правильно отсортированными элементами.
Как обеспечить, чтобы элемент OTHER
(и любой другой элемент) шел после элементов, соответствующих перечисленным значениям свойств в sort
?