Java sort () metode

Java kolekciju sistēma nodrošina statisku metodi sort (), kuru var izmantot, lai kārtotu elementus kolekcijā.

sort()No kolekcijas ietvaros metode izmanto sapludināšanas kārtošanas algoritmu, lai kārtotu elementu kolekcija.

Apvienošanas kārtošanas algoritms ir balstīts uz dalīšanas un iekarošanas likumu. Lai uzzinātu vairāk par apvienošanas kārtojumu, apmeklējiet apvienošanas algoritmu.

Ņemsim sort()metodes piemēru .

Piemērs: kārtošana augošā secībā

 import java.util.ArrayList; import java.util.Collections; class Main ( public static void main(String() args) ( // Creating an array list ArrayList numbers = new ArrayList(); // Add elements numbers.add(4); numbers.add(2); numbers.add(3); System.out.println("Unsorted ArrayList: " + numbers); // Using the sort() method Collections.sort(numbers); System.out.println("Sorted ArrayList: " + numbers); ) ) 

Rezultāts

 Nesakārtots masīvu saraksts: (4, 2, 3) sakārtots masīvu saraksts: (2, 3, 4) 

Kā redzat, pēc noklusējuma šķirošana notiek dabiskā secībā (augošā secībā). Tomēr mēs varam pielāgot sort()metodes šķirošanas secību .

Pielāgota šķirošanas kārtība

Java valodā sort()metodi var pielāgot, lai veiktu šķirošanu apgrieztā secībā, izmantojot Comparatorinterfeisu.

Piemērs: kārtošana dilstošā secībā

 import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; class Main ( public static void main(String() args) ( // Creating an array list ArrayList numbers = new ArrayList(); // Add elements numbers.add(4); numbers.add(2); numbers.add(3); System.out.println("Unsorted ArrayList: " + numbers); // Using the sort() method Collections.sort(numbers); System.out.println("Natural Sorting: " + numbers); // Using the customized sort() method Collections.sort(numbers, new CustomComparator()); System.out.println("Customized Sorting: " + numbers); ) ) class CustomComparator implements Comparator ( @Override public int compare(Integer animal1, Integer animal2) ( int value = animal1.compareTo(animal2); // elements are sorted in reverse order if (value> 0) ( return -1; ) else if (value < 0) ( return 1; ) else ( return 0; ) ) ) 

Rezultāts

 Nesakārtots masīvu saraksts: (4, 2, 3) Dabiskā šķirošana: (2, 3, 4) Pielāgota šķirošana: (4, 3, 2) 

Iepriekš minētajā piemērā mēs sort()kā argumentu izmantojām metodi ar CustomComparator.

Šeit CustomComparator ir klase, kas īsteno Comparatorsaskarni. Uzziniet vairāk par Java Comparator interfeisu.

Pēc tam mēs ignorējam compare()metodi. Tagad metode kārtos elementus apgrieztā secībā.

Interesanti raksti...