集合stream 排序
时间: 2023-07-23 22:06:08 浏览: 36
如果你想要对一个集合进行排序,可以使用Java 8中的Stream API来实现。下面是一个示例代码:
```java
List<Integer> numbers = Arrays.asList(2, 5, 1, 8, 4);
List<Integer> sortedNumbers = numbers.stream()
.sorted()
.collect(Collectors.toList());
System.out.println(sortedNumbers);
```
这段代码将会输出 `[1, 2, 4, 5, 8]`,表示集合中的数字已经按从小到大的顺序排列。
在这个示例中,我们首先创建了一个包含一些数字的集合。然后,我们将集合转换为一个Stream对象,并使用它的 `sorted()` 方法对其中的元素进行排序。最后,我们使用 `collect()` 方法将排序后的结果转换回一个List对象。
你可以根据需要修改这个示例,实现不同类型的排序。例如,如果你想要按照字符串的长度排序,可以这样写:
```java
List<String> strings = Arrays.asList("apple", "banana", "orange", "pear");
List<String> sortedStrings = strings.stream()
.sorted(Comparator.comparing(String::length))
.collect(Collectors.toList());
System.out.println(sortedStrings);
```
这段代码将会输出 `["pear", "apple", "banana", "orange"]`,表示字符串已经按照长度从短到长排序。