Все мы знаем, что массив — это фиксированный набор компонентов одного типа. Компонентами могут быть как примитивные типы, так и объекты. Сегодня мы рассмотрим один из самых популярных действий с массивами, а именно — сортировка.
Самым удобным, простым и эффективным способом отсортировать массив является метод sort()
класса Arrays.
Ниже приведена простая программа сортировки массива с использованием метода Arrays.sort()
.
JavaArraySort.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
package ua.com.prologistic; import java.util.Arrays; public class JavaArraySort { public static void main(String[] args) { int[] intArr = {1, 4, 2, 6, 3}; String[] strArr = {"E", "B", "U","O","I"}; //сортируем массив чисел Arrays.sort(intArr); //сортируем массив строк Arrays.sort(strArr); System.out.println(Arrays.toString(intArr)); System.out.println(Arrays.toString(strArr)); } } |
Результат выполнения программы будет следующий:
1 2 |
[1, 2, 3, 4, 6] [B, E, I, O, U] |
Обратите внимание, что мы можем использовать Arrays.sort(T[] tArr)
только если тип массива реализует интерфейс Comparable. Существует еще один вариант метода, который использовали: Arrays.sort(T[] tArr, Comparator c)
. Подробнее об этом методе и вообще о способе сортировки массива с помощью компаратора читайте в следующий статьях на Javadevblog.com
Также следует отметить, что метод Arrays.sort(T[] t)
использует реализацию алгоритма быстрой сортировки под названием Dual-Pivot Quicksort. Производительность такого алгоритма равна O(n log(n))
. Сортировка происходит в порядке возрастания.