Mam List1 w bezpośredniej kolejności. List<String> list = Ordering.natural().sortedCopy(asu2);
Jak zmienić zamówienie. I nie wiem, jak przepisać metody z rozszerzania klasy, proszę pisać z przykładami lub mówić wyraźnie. Dzięki.Sortuj listę w odwrotnej kolejności
Odpowiedz
Istnieje metoda reverseOrder
w klasie Collections
, która zwraca wartość Comparator
.
Można go używać jak Collections.sort(list, Collections.reverseOrder());
Rozważałbym twoją odpowiedź, ponieważ nie byłoby konieczne załatwianie jej tylko po przywróceniu. Twoje podejście jest w stanie wykonać dwie operacje w jednej ramce. Nie wiem o innych, ale dziękuję. – Loa
Aby odwrócić kolejność elementów w List można wykorzystać Collections.reverse(List<?> list)
Jeśli chcesz, aby posortować listę w odwrotnej naturalny zamówienie, guava's Ordering ma a reverse method:
List<String> list = Ordering.natural().reverse().sortedCopy(asu2);
Collections.reverse(List)
odwraca podaną listę w miejscu. Możesz również użyć Guva Lists.reverse(List)
, aby utworzyć widok wspierany przez podaną listę, która jest w odwrotnej kolejności, bez kopiowania lub modyfikowania oryginalnej listy.
Jeśli chcesz utworzyć listę posortowaną w odwrotnej kolejności, zobacz odpowiedź @ assylias na temat Ordering.natural().reverse()
.
możesz odwrócić dowolny typ, po prostu umieszczając znak "-" lub znak ujemny na swoim powrocie.
Collections.sort(listed, new Comparator<Object>() {
@Override
public int compare(Object o1, Object o2) {
return -o1.getLeft().compareTo(o2.getLeft());
}
});
I pozwala mieć nadzieję, że 'compareTo' nigdy nie zwróci minimalnej liczby całkowitej, ponieważ' -Integer.MIN_VALUE' nadal ma wartość 'Integer.MIN_VALUE'. Najbezpieczniejszym sposobem byłoby zamiana o1 z o2 jak 'return o2.getLeft(). CompareTo (o1.getLeft())' – Pshemo
Czy możesz rozwinąć swoje pytanie na przykładzie? –
Co dokładnie oznacza "kolejność zmian"? Odwrócić listę lub zastosować do niej całkowicie nowe zamówienie na podstawie określonego zestawu reguł? – f1sh
Chcesz, aby lista została posortowana w porządku malejącym. Dobrze? – JHS