Putem folosi următoarele metode pentru a sorta lista:
diferenta simetrica
- Folosind metoda stream.sorted().
- Folosind metoda Comparator.reverseOrder().
- Folosind metoda Comparator.naturalOrder().
- Folosind metoda Collections.reverseOrder().
- Folosind metoda Collections.sort().
Interfață Java Stream
Interfața Java Stream oferă două metode de sortare a listei:
metoda sortat().
Interfața Stream oferă o metodă sortat() pentru a sorta o listă. Este definit în interfața Stream care este prezentă în pachetul java.util . Returnează un flux sortat după ordinea naturală. Dacă elementele nu sunt comparabile, se aruncă java.lang.ClassCastException. Semnătura metodei este:
Stream sorted()
Parametru
T: Este un tip de element de flux.
Java Stream.sorted(Comparator comparator)
De asemenea, returnează un flux sortat în funcție de comparatorul furnizat. Este stabil pentru un flux ordonat. Semnătura metodei este:
Stream sorted(Comparator comparator)
Parametrii
- T este tipul de element de flux.
- comparator care trebuie utilizat pentru a compara elemente
Exemplu
În exemplul următor, am folosit următoarele metode:
arahide vs arahide
- În Java 8, stream() este un API folosit pentru a procesa colecții de obiecte.
- Metoda collect() este folosită pentru a primi elemente dintr-un flux și pentru a le stoca într-o colecție.
- ToList() returnează colectorul care colectează toate elementele de intrare într-o listă, în ordinea întâlnirii.
Exemplu
import java.util.*; import java.util.stream.*; public class SortListExample1 { public static void main(String[] args) { //returns a list view List slist = Arrays.asList('Tanu', 'Kamal', 'Suman', 'Lucky', 'Bunty', 'Amit'); List sortedList = slist.stream().sorted().collect(Collectors.toList()); sortedList.forEach(System.out::println); } }
Ieșire:
Metoda Java Comparator.reverseOrder().
ReverseOrder() este o metodă de interfață Comparator care este definită în pachetul java.util. Metoda returnează un comparator care impune inversul ordinii naturale. Aruncă NullPointerException la compararea null. Semnătura metodei este:
static <t extends comparable> Comparator reverseOrder() </t>
Comparabil este, de asemenea, o interfață care aparține unui pachet java.lang.
Parametrii
T: tip comparabil de element de comparat.
metoda substring în java
Exemplu
import java.util.*; import java.util.stream.Collectors; public class SortListExample2 { public static void main(String[] args) { //returns a list view List slist = Arrays.asList('78', 'a', 'm', 'b', 'z', 'c', '12', 'l', '1'); ListsortedList=slist.stream().sorted(Comparator.reverseOrder()).collect(Collectors.toList()); sortedList.forEach(System.out::println); } }
Ieșire:
Java Comparator.naturalOrder()
Metoda returnează un comparator care compară obiecte comparabile în ordinea naturală. Comparabilul returnat este serializabil. Când comparăm null, acesta aruncă NullPointerException. Este din Java 8. Semnătura metodei este:
Static <t extends comparable> Comparator naturalOrder() </t>
- Metoda sortează elementele în ordine naturală (ordine crescător).
- Se pune null în partea de sus, dacă există.
- Pune elementele cu majuscule mai întâi în ordine naturală, după acele litere mici în ordinea naturală, dacă lista are atât litere mici, cât și majuscule.
Parametrii
T: Tip comparabil de element care trebuie comparat.
Exemplu
import java.util.*; public class SortListExample3 { public static void main(String[] args) { List country = Arrays.asList('Russia', 'India', 'China', 'Japan', '', 'Ghana'); List country1 = Arrays.asList('Russia','india', 'China', 'Japan', '', 'ghana'); System.out.println(country); //prints the same list as we define country.sort(String.CASE_INSENSITIVE_ORDER); //sorts the list in case insensitive order System.out.println(country1); country.sort(Comparator.naturalOrder()); //sorts list in ascending order System.out.println(country); //sorts list in ascending order (null, capital letter and small letter) country1.sort(Comparator.naturalOrder()); System.out.println(country1); } }
Ieșire:
Metoda Java Collections.reverseOrder().
Este metoda clasei Java Collections care aparține unui pachet java.lang. Returnează un comparator care impune inversul ordinii naturale. Semnătura metodei este:
public static Comparator reverseOrder()
Parametrii
Clasa obiectelor comparate de comparator.
Exemplu
import java.util.Arrays; import java.util.Collections; import java.util.List; public class SortListExample4 { public static void main(String args[]) { List list = Arrays.asList(10,1,-20,40,5,-23,0); Collections.sort(list, Collections.reverseOrder()); System.out.println(list); } }
Ieșire:
Metoda Java Collections.sort().
Clasa Collections are două metode de sortare a unei liste:
cum să știți dimensiunea afișajului
metoda sort().
Metoda sort() sortează lista în ordine crescătoare, în funcție de ordinea naturală a elementelor sale. Semnătura metodei este:
public static <t extends comparable> void sort() (List list) </t>
Parametrii
T: Este un parametru de tip.
listă: lista de sortat.
df loc
Să vedem un alt exemplu de metodă Collections.sorts().
Exemplu
import java.util.*; public class SortListExample5 { public static void main(String[] args) { List sList = new ArrayList(); sList.add('m'); sList.add('k'); sList.add('a'); sList.add('p'); sList.add('d'); Collections.sort(sList); //sorts array list for(String str: sList) System.out.print(' '+str); } }
Ieșire: