Описание Java API класса массивов: этот класс содержит различные методы, используемые для манипулирования массивами (например, сортировка и поиск).
1. Сортируйте массивы основных типов данных
иллюстрировать:
(1) sort () в классе массивов использует «настроенный метод быстрой сортировки»;
(2) Например, массивы базовых типов данных, такие как int [], Double [], char [] и т. Д., Класс массивов предоставляет только расположение по умолчанию по умолчанию и не предоставляет соответствующий метод расположения порядок убывания.
(3) Чтобы сортировать массивы основных типов в порядке убывания, вам необходимо преобразовать эти массивы в соответствующие инкапсулированные классовые массивы, такие как целое число [], двойное [], символ [] и т. Д., Чтобы сортировать эти классовые массивы. (На самом деле, лучше сначала сортировать восходящий порядок и самостоятельно превратить его в заказ).
Сортировки массивов по умолчанию по умолчанию
Прототип функции: Статическая void sort (int [] a) Сортировать указанный массив Int-Type в порядке возрастания.
Статическая void sort (int [] a, int fromindex, int toindex) сортируют указанный диапазон массива типа int в восходящих числах.
Пример кода:
Кода -копия выглядит следующим образом:
импортировать java.util.arrays;
Общедоступный класс Arrayssort_11 {
Public Static Void Main (String Args [])
{
int [] a = {1,4, -1,5,0};
Arrays.sort (A);
// Содержание массива A [] становится {-1,0,1,4,5}
для (int i = 0; i <a.length; i ++)
System.out.print (a [i]+"");
}
}
2. Сортировка данных типов композитных данных
Функциональный прототип:
(1) Public Static <t> void sort (t [] a, компаратор C) Сортируйте указанный массив объектов в соответствии с порядком, сгенерированным указанным компаратором.
(2) Публичная статическая сортировка <t> void (t [] a, int fromindex, int toindex, компаратор C) Сортировать указанный диапазон указанного массива объектов в соответствии с порядком, сгенерированным указанным компаратором.
Примечание. Эти два алгоритма сортировки являются алгоритмом «слияния слияния».
Пример кода:
Кода -копия выглядит следующим образом:
Пакет Аа;
импортировать java.util.arrays;
Импорт java.util.comparator;
открытый класс Arraysort {
Точка [] arr;
ArraySort () {
arr = новая точка [4];
для (int i = 0; i <4; i ++)
arr [i] = new Point ();
}
public static void main (string [] args) {
Arraysort sort = new Arraysort ();
sort.arr [0] .x = 2; sort.arr [0] .y = 1;
sort.arr [1] .x = 2; sort.arr [1] .y = 2;
sort.arr [2] .x = 1; sort.arr [2] .y = 2;
sort.arr [3] .x = 0; sort.arr [3] .y = 1;
Arrays.sort (sort.arr, new mycomprator ());
для (int i = 0; i <4; i ++) // Результат сортировки вывода
System.out.println ("("+sort.arr [i] .x+","+sort.arr [i] .y+")");
}
}
класс точка {
int x;
int y;
}
// Координаторы x координаты отсортированы от малого до большого;
класс MyComprator реализует компаратор {
public int compare (объект arg0, object arg1) {
Точка T1 = (точка) arg0;
Точка T2 = (точка) arg1;
if (t1.x! = t2.x)
возврат t1.x> t2.x?
еще
Вернуть t1.y> t2.y?
}
}