Java 中数组排序方法有三种:Arrays.sort()适用于基本类型和实现 Comparable 接口的对象类型;Comparator.comparing()适用于不实现 Comparable 接口的对象类型;Collection.sort()适用于通过 Collections 工具类包装的数组。

如何在 Java 中给数组排序
Java 中提供多种方法可对数组进行排序,具体方法取决于数组元素的数据类型以及所需的排序算法。
1. Arrays.sort()
- 适用数据类型:基本类型(int、double、char 等)和对象类型(实现 Comparable 接口)
- 算法:快速排序(默认)或归并排序(当数组过大时)
-
语法:
Arrays.sort(array);
例如:
立即学习“Java免费学习笔记(深入)”;
int[] numbers = {5, 2, 8, 3, 1};
Arrays.sort(numbers); // 排序数组
System.out.println(Arrays.toString(numbers)); // 输出:[1, 2, 3, 5, 8]2. Comparator.comparing()
ReportPlust意在打造一套精美的数据报表模板,里面高度封装日历组件、表格组件、排行榜组件、条形进度条组件、文本块组件以及ucharts的多个图表组件,用户只需要按照虚拟数据的格式,传特定数据即可方便、快捷地打造出属于自己的报表页面。该小程序主要使用了ucharts和wyb-table两插件实现的数据报表功能。 特点使用的是uni-app中最受欢迎的图表uCharts插件完成图表展示,该插件
- 适用数据类型:对象类型(不实现 Comparable 接口)
- 算法:自定义比较器
-
语法:
Arrays.sort(array, Comparator.comparing(field));
例如:
立即学习“Java免费学习笔记(深入)”;
class Person {
private String name;
private int age;
// ...
}
Person[] people = {
new Person("Bob", 30),
new Person("Alice", 25),
new Person("John", 40)
};
Arrays.sort(people, Comparator.comparing(Person::getName)); // 按姓名排序
System.out.println(Arrays.toString(people)); // 输出:[Alice, Bob, John]3. Collection.sort()
- 适用数据类型:通过 Collections 工具类包装的数组
- 算法:自定义 Comparator 或使用自然排序(实现 Comparable 接口)
-
语法:
Collections.sort(list);
例如:
立即学习“Java免费学习笔记(深入)”;
Listnumbers = Arrays.asList(5, 2, 8, 3, 1); Collections.sort(numbers); // 排序集合 System.out.println(numbers); // 输出:[1, 2, 3, 5, 8]









