在Java中,对数组进行排序可以使用`java.util.Arrays`类中的`sort()`方法。以下是一些基本的排序方法:
默认排序
int[] numbers = {5, 2, 8, 1, 4};
Arrays.sort(numbers);
自定义比较器排序
Comparator
comparator = (a, b) -> b - a; Arrays.sort(numbers, comparator);
并行排序
Arrays.parallelSort(numbers);
部分排序
int[] arr = {4, 3, 5, 1, 2, 9, 3, 0};
Arrays.sort(arr, 1, 4);
自定义类排序
class MyClass implements Comparable
{ private int value;
@Override
public int compareTo(MyClass other) {
return this.value - other.value;
}
}
MyClass[] myArray = new MyClass;
// 初始化myArray
Arrays.sort(myArray);
使用`Collections.sort()`(适用于对象数组):
List
names = Arrays.asList("Alice", "Bob", "Carol", "Dave"); Collections.sort(names);
以上方法可以满足大部分排序需求。需要注意的是,`sort()`方法使用的是Dual-Pivot快速排序算法,其时间复杂度为O(n log(n))。