Arrays.sort()
是 Java 中的一个非常有用的方法,用于对数组进行排序。这个方法属于 java.util.Arrays
类,它提供了多种重载版本,可以用于不同类型的数组。
以下是 Arrays.sort()
的基本用法和一些示例:
对整数数组进行排序:
import java.util.Arrays;
public class SortExample {
public static void main(String[] args) {
int[] arr = {5, 2, 9, 1, 5, 6};
Arrays.sort(arr);
System.out.println(Arrays.toString(arr)); // 输出:[1, 2, 5, 5, 6, 9]
}
}
对字符串数组进行排序:
import java.util.Arrays;
public class SortExample {
public static void main(String[] args) {
String[] arr = {"Apple", "Banana", "Cherry", "Date"};
Arrays.sort(arr);
System.out.println(Arrays.toString(arr)); // 输出:[Apple, Banana, Cherry, Date]
}
}
Comparable
接口的类,或者提供一个 Comparator
。例如,假设你有一个 Person
类,你想根据人的年龄对其进行排序:
import java.util.Arrays;
import java.util.Comparator;
class Person {
String name;
int age;
// ... 构造函数、getter、setter ...
}
public class SortExample {
public static void main(String[] args) {
Person[] persons = {/* ... 初始化 persons ... */};
Arrays.sort(persons, new Comparator<Person>() {
@Override
public int compare(Person p1, Person p2) {
return Integer.compare(p1.getAge(), p2.getAge());
}
});
// ... 现在 persons 数组已按年龄排序 ...
}
}
注意:当使用 Arrays.sort()
对自定义对象数组进行排序时,你需要提供一个 Comparator
或让你的类实现 Comparable
接口。否则,默认的字典序排序可能不是你想要的。