list.stream()排序
时间: 2023-10-07 12:07:02 浏览: 90
要对一个 `List` 进行排序,你可以使用 `stream()` 方法返回一个流,然后使用 `sorted()` 方法对流进行排序。下面是一个示例代码:
```java
List<Integer> numbers = Arrays.asList(5, 3, 8, 2, 1);
List<Integer> sortedNumbers = numbers.stream()
.sorted()
.collect(Collectors.toList());
System.out.println(sortedNumbers);
```
上述代码将会输出 `[1, 2, 3, 5, 8]`,表示已经按照升序排序的列表。
你也可以使用 `sorted()` 方法的重载版本来提供自定义的比较器,以实现根据特定条件进行排序。例如,如果你有一个自定义的对象列表,你可以根据对象的某个属性进行排序。以下是一个示例:
```java
List<Person> people = Arrays.asList(
new Person("John", 25),
new Person("Alice", 30),
new Person("Bob", 20)
);
List<Person> sortedPeople = people.stream()
.sorted(Comparator.comparing(Person::getAge))
.collect(Collectors.toList());
System.out.println(sortedPeople);
```
上述代码将会按照人的年龄进行升序排序,并输出 `[Bob:20, John:25, Alice:30]`。
希望这能帮到你!如果有任何其他问题,请随时提问。
阅读全文