logo

Kako razvrstiti seznam v Javi

Za razvrščanje seznama lahko uporabimo naslednje metode:

funkcije v c
  • Uporaba metode stream.sorted().
  • Uporaba metode Comparator.reverseOrder().
  • Uporaba metode Comparator.naturalOrder().
  • Uporaba metode Collections.reverseOrder().
  • Uporaba metode Collections.sort().

Java Stream vmesnik

Vmesnik Java Stream nudi dva načina za razvrščanje seznama:

sorted() metoda

Vmesnik Stream ponuja metodo sorted() za razvrščanje seznama. Definiran je v vmesniku Stream, ki je prisoten v paket java.util . Vrne tok, razvrščen po naravnem vrstnem redu. Če elementi niso primerljivi, vrže izjemo java.lang.ClassCastException. Podpis metode je:

 Stream sorted() 

Parameter

T: To je vrsta tokovnega elementa.

Java Stream.sorted(Comparator comparator)

Vrne tudi tok, razvrščen glede na podani primerjalnik. Je stabilen za urejen tok. Podpis metode je:

 Stream sorted(Comparator comparator) 

Parametri

  • T je vrsta tokovnega elementa.
  • primerjalnik, ki se uporablja za primerjavo elementov

Primer

V naslednjem primeru smo uporabili naslednje metode:

kako vedeti velikost zaslona
  • V Javi 8 je stream() API, ki se uporablja za obdelavo zbirk predmetov.
  • Metoda collect() se uporablja za sprejemanje elementov iz toka in njihovo shranjevanje v zbirko.
  • ToList() vrne zbiralnik, ki zbere vse vhodne elemente v seznam v vrstnem redu srečanj.

Primer

 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); } } 

Izhod:

Kako razvrstiti seznam v Javi

Metoda Java Comparator.reverseOrder().

ReverseOrder() je metoda vmesnika Comparator, ki je definirana v paketu java.util. Metoda vrne primerjalnik, ki vsiljuje obraten naravni vrstni red. Vrže NullPointerException, ko primerja null. Podpis metode je:

 static <t extends comparable> Comparator reverseOrder() </t>

Primerljiv je tudi vmesnik, ki pripada paketu java.lang.

Parametri

T: primerljiva vrsta elementa za primerjavo.

Primer

 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(&apos;78&apos;, &apos;a&apos;, &apos;m&apos;, &apos;b&apos;, &apos;z&apos;, &apos;c&apos;, &apos;12&apos;, &apos;l&apos;, &apos;1&apos;); ListsortedList=slist.stream().sorted(Comparator.reverseOrder()).collect(Collectors.toList()); sortedList.forEach(System.out::println); } } 

Izhod:

Kako razvrstiti seznam v Javi

Java Comparator.naturalOrder()

Metoda vrne primerjalnik, ki primerja primerljive predmete v naravnem vrstnem redu. Vrnjeno primerjavo je mogoče serializirati. Ko primerjamo null, vrže NullPointerException. Je iz Jave 8. Podpis metode je:

 Static <t extends comparable> Comparator naturalOrder() </t>
  • Metoda razvršča elemente po naravnem vrstnem redu (naraščajočem vrstnem redu).
  • Na vrh postavi ničlo, če obstaja.
  • Elemente velikih črk najprej postavi v naravnem vrstnem redu, nato male črke v naravnem vrstnem redu, če ima seznam tako male kot velike črke.

Parametri

T: Primerljiva vrsta elementa za primerjavo.

niz v datum

Primer

 import java.util.*; public class SortListExample3 { public static void main(String[] args) { List country = Arrays.asList(&apos;Russia&apos;, &apos;India&apos;, &apos;China&apos;, &apos;Japan&apos;, &apos;&apos;, &apos;Ghana&apos;); List country1 = Arrays.asList(&apos;Russia&apos;,&apos;india&apos;, &apos;China&apos;, &apos;Japan&apos;, &apos;&apos;, &apos;ghana&apos;); 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); } } 

Izhod:

arraylist sort
Kako razvrstiti seznam v Javi

Metoda Java Collections.reverseOrder().

Je metoda razreda Java Collections, ki pripada paketu java.lang. Vrne primerjalnik, ki vsiljuje obraten naravni vrstni red. Podpis metode je:

 public static Comparator reverseOrder() 

Parametri

Razred predmetov, ki jih primerja primerjalnik.

Primer

 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); } } 

Izhod:

Kako razvrstiti seznam v Javi

Metoda Java Collections.sort().

Razred Zbirke ima dve metodi za razvrščanje seznama:

metoda sort().

Metoda sort() razvrsti seznam v naraščajočem vrstnem redu glede na naravni vrstni red njegovih elementov. Podpis metode je:

 public static <t extends comparable> void sort() (List list) </t>

Parametri

tipi referenčnih podatkov v Javi

T: To je tipski parameter.

seznam: seznam, ki ga želite razvrstiti.

Oglejmo si še en primer metode Collections.sorts().

Primer

 import java.util.*; public class SortListExample5 { public static void main(String[] args) { List sList = new ArrayList(); sList.add(&apos;m&apos;); sList.add(&apos;k&apos;); sList.add(&apos;a&apos;); sList.add(&apos;p&apos;); sList.add(&apos;d&apos;); Collections.sort(sList); //sorts array list for(String str: sList) System.out.print(&apos; &apos;+str); } } 

Izhod:

Kako razvrstiti seznam v Javi