Метод Јава сортирања ()

У Јави, оквир збирки пружа статички метод сорт () који се може користити за сортирање елемената у колекцији.

sort()Метод оквира збирки користи сортирање спајањем алгоритам за сортирање елемената колекције.

Алгоритам сортирања спајања заснован је на правилу подели и освоји. Да бисте сазнали више о сортирању обједињавања, посетите алгоритам сортирања обједињавања.

Узмимо пример sort()методе.

Пример: Сортирање у растућем редоследу

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

Оутпут

 Неразврстана листа низова: (4, 2, 3) Сортирана листа низова: (2, 3, 4) 

Као што видите, сортирање се подразумевано одвија природним редоследом (растућим редоследом). Међутим, можемо прилагодити редослед сортирања sort()методе.

Прилагођени редослед сортирања

У Јави се sort()метода може прилагодити да врши сортирање обрнутим редоследом помоћу Comparatorинтерфејса.

Пример: Сортирање у опадајућем редоследу

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

Оутпут

 Неразврстана листа низова: (4, 2, 3) Природно сортирање: (2, 3, 4) Прилагођено сортирање: (4, 3, 2) 

У горњем примеру, користили смо sort()методу са ЦустомЦомпаратор као аргумент.

Овде је ЦустомЦомпаратор класа која имплементира Comparatorинтерфејс. Сазнајте више о интерфејсу Јава Цомпаратор.

Затим заменимо compare()методу. Метода ће сада сортирати елементе обрнутим редоследом.

Занимљиви Чланци...