如何使用 Java 数组从小到大排序?java 提供了以下方法对数组从小到大排序:arrays.sort() 方法:用于对基本类型和对象数组使用快速排序或归并排序。自我排序(基本类型数组):冒泡排序插入排序选择排序自我排序(对象数组):需要实现 comparable 接口并提供 compareto() 方法。
如何使用 Java 数组从小到大排序
在 Java 中,可以通过以下方式对数组从小到大进行排序:
用法:
int[] arr = {5, 2, 8, 3, 6}; Arrays.sort(arr);
2. 自我排序
- 对于基本类型数组,可以使用以下自我排序算法:
冒泡排序:
int[] arr = {5, 2, 8, 3, 6}; for (int i = 0; i < arr.length - 1; i++) { for (int j = 0; j < arr.length - i - 1; j++) { if (arr[j] > arr[j + 1]) { int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } }
插入排序:
int[] arr = {5, 2, 8, 3, 6}; for (int i = 1; i < arr.length; i++) { int key = arr[i]; int j = i - 1; while (j >= 0 && arr[j] > key) { arr[j + 1] = arr[j]; j--; } arr[j + 1] = key; }
选择排序:
int[] arr = {5, 2, 8, 3, 6}; for (int i = 0; i < arr.length - 1; i++) { int minIndex = i; for (int j = i + 1; j < arr.length; j++) { if (arr[j] < arr[minIndex]) { minIndex = j; } } int temp = arr[i]; arr[i] = arr[minIndex]; arr[minIndex] = temp; }
3. 自我排序(对象数组)
- 对于对象数组,需要实现 Comparable 接口并提供 compareTo() 方法,该方法用于比较两个对象的大小。
用法:
class Person implements Comparable<Person> { private int age; private String name; @Override public int compareTo(Person other) { return this.age - other.age; } } Person[] people = { new Person(20, "Alice"), new Person(30, "Bob"), new Person(15, "Charlie") }; Arrays.sort(people);