jdk8 lambda sorted
时间: 2023-06-21 19:24:39 浏览: 96
在 JDK8 中,Lambda 表达式可以用来简化排序操作,其中 `sorted()` 方法是用于对流进行排序的。它有两种形式:一个使用自然排序,另一个接受一个 Comparator 参数来指定排序顺序。例如,以下代码将一个字符串列表按字母顺序排序:
```
List<String> list = Arrays.asList("apple", "banana", "orange", "pear");
list.sort((s1, s2) -> s1.compareTo(s2));
```
另外,也可以使用静态方法 `Comparator.comparing()` 来更简单地进行排序。例如,以下代码将一个 Person 对象列表按年龄从小到大排序:
```
List<Person> people = Arrays.asList(new Person("Alice", 25), new Person("Bob", 20), new Person("Charlie", 30));
people.sort(Comparator.comparing(Person::getAge));
```
这里的 `Person::getAge` 是一个方法引用,用于获取 Person 对象的年龄属性。
阅读全文