java8 list 排序
时间: 2023-07-21 09:30:40 浏览: 96
可以使用Java8的Lambda表达式和Comparator接口对List进行排序,示例代码如下:
假设有一个List<String> list,需要按照字符串长度进行升序排序:
```
List<String> list = Arrays.asList("apple", "banana", "pear", "orange", "grape");
list.sort(Comparator.comparingInt(String::length));
```
如果需要进行降序排序,只需要在comparingInt方法后面调用reversed方法即可:
```
list.sort(Comparator.comparingInt(String::length).reversed());
```
如果需要按照多个条件进行排序,可以通过链式调用Comparator的thenComparing方法实现,示例代码如下:
```
List<Person> list = Arrays.asList(new Person("Tom", 25), new Person("Jack", 20), new Person("Alice", 30));
list.sort(Comparator.comparing(Person::getAge).thenComparing(Person::getName));
```
以上代码将按照年龄升序排序,如果年龄相同则按照姓名升序排序。
阅读全文