java 使用stream流将list排序
时间: 2023-08-09 11:06:53 浏览: 96
Java8Test.java_java8_almosttog_stream流_
在 Java 中,可以使用 Stream 流来对 List 进行排序。以下是一个示例代码:
```java
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import java.util.stream.Collectors;
public class Main {
public static void main(String[] args) {
List<Integer> numbers = new ArrayList<>();
numbers.add(5);
numbers.add(2);
numbers.add(8);
numbers.add(1);
numbers.add(3);
// 使用 Stream 流对 List 进行排序
List<Integer> sortedNumbers = numbers.stream()
.sorted()
.collect(Collectors.toList());
System.out.println("原始列表:" + numbers);
System.out.println("排序后的列表:" + sortedNumbers);
}
}
```
在以上示例中,我们创建了一个整数类型的 List,并使用 Stream 流的 `sorted()` 方法对其进行排序。最后,我们使用 `collect(Collectors.toList())` 方法将排序后的元素收集到一个新的 List 中。
运行以上代码,将输出原始列表和排序后的列表。
如果您需要按照自定义的比较器进行排序,可以使用 `sorted(Comparator)` 方法。例如,按照降序排序:
```java
List<Integer> sortedNumbers = numbers.stream()
.sorted(Comparator.reverseOrder())
.collect(Collectors.toList());
```
希望对您有所帮助!如果您有其他问题,请随时提问。
阅读全文