List sort() 方法用于使用归并排序算法对列表元素进行升序排序。它接受一个 Comparator 对象来定义排序规则。以下为示例:使用自然排序(按字母顺序)排序:list.sort(null);使用定制的比较器按长度排序:list.sort(Comparator.comparing(String::length));使用匿名内部类实现自定义比较器排序:list.sort(new Comparator() { ... });
Java List sort() 排序
如何使用 List sort() 排序?
Java List 类提供 sort() 方法,用于对列表中的元素进行排序。sort() 方法使用归并排序算法对列表进行升序排序。归并排序是一种稳定的、时间复杂度为 O(n log n) 的算法。
语法:
public void sort(Comparator super E> c)
使用示例:
Listnames = new ArrayList<>(); names.add("John"); names.add("Alice"); names.add("Bob"); // 使用自然排序(按字母顺序) names.sort(null); // 使用定制的比较器按长度排序 names.sort(Comparator.comparing(String::length));
注意事项:
排序规则:
sort() 方法接受一个 Comparator 对象作为参数。Comparator 对象定义了元素排序的规则。以下是一些常见的比较器:
扩展示例:
// 使用匿名内部类实现比较器 Listemployees = new ArrayList<>(); employees.add(new Employee("John", 30)); employees.add(new Employee("Alice", 25)); employees.add(new Employee("Bob", 40)); // 按年龄排序 employees.sort(new Comparator () { @Override public int compare(Employee e1, Employee e2) { return e1.getAge() - e2.getAge(); } });