Arrylist sort
时间: 2023-09-12 21:06:20 浏览: 101
ArrayList.sort() 方法用于对 ArrayList 中的元素进行排序。它可以按照自然顺序或者使用自定义的比较器进行排序。
如果 ArrayList 中的元素实现了 Comparable 接口,即具有默认的自然排序规则,那么可以直接使用 ArrayList.sort() 进行排序。示例代码如下:
```java
import java.util.ArrayList;
import java.util.Collections;
public class Main {
public static void main(String[] args) {
ArrayList<Integer> numbers = new ArrayList<>();
numbers.add(5);
numbers.add(2);
numbers.add(10);
numbers.add(7);
Collections.sort(numbers);
System.out.println(numbers);
}
}
```
输出结果为:[2, 5, 7, 10]
如果 ArrayList 中的元素没有实现 Comparable 接口,或者想要使用自定义的排序规则,可以通过传递一个比较器对象给 ArrayList.sort() 方法来实现。示例代码如下:
```java
import java.util.ArrayList;
import java.util.Collections;import java.util.Comparator;
public class Main {
public static void main(String[] args) {
ArrayList<String> names = new ArrayList<>();
names.add("Alice");
names.add("Bob");
names.add("Charlie");
names.add("Eve");
// 使用自定义的比较器按照字符串长度进行排序
Comparator<String> lengthComparator = Comparator.comparingInt(String::length);
Collections.sort(names, lengthComparator);
System.out.println(names);
}
}
```
输出结果为:[Bob, Eve, Alice, Charlie]
这是利用 Comparator.comparingInt() 方法创建了一个比较器对象,通过指定比较的属性(这里是字符串的长度)来实现自定义排序。然后将比较器对象传递给 ArrayList.sort() 方法进行排序。
阅读全文