Stream流是Java 8引入的新特性,它提供了一种流式操作集合的方式,可以方便地进行筛选、排序、映射等操作。下面是一些常用的Stream流命令以及示例:

filter:根据条件过滤集合中的元素。

List<String> list = Arrays.asList("apple", "banana", "orange", "pear", "watermelon");
List<String> filteredList = list.stream().filter(s -> s.startsWith("a")).collect(Collectors.toList());
// 输出:[apple]

map:对集合中的元素进行映射操作,返回一个新的集合。

List<String> list = Arrays.asList("apple", "banana", "orange", "pear", "watermelon");
List<String> mappedList = list.stream().map(String::toUpperCase).collect(Collectors.toList());
// 输出:[APPLE, BANANA, ORANGE, PEAR, WATERMELON]

sorted:对集合中的元素进行排序操作。

List<Integer> list = Arrays.asList(5, 2, 7, 3, 9);
List<Integer> sortedList = list.stream().sorted().collect(Collectors.toList());
// 输出:[2, 3, 5, 7, 9]

distinct:去重操作,返回一个没有重复元素的集合。

List<Integer> list = Arrays.asList(1, 2, 2, 3, 3, 3, 4, 4, 4, 4);
List<Integer> distinctList = list.stream().distinct().collect(Collectors.toList());
// 输出:[1, 2, 3, 4]

limit:限制集合中元素的数量。

List<Integer> list = Arrays.asList(1, 2, 3, 4, 5);
List<Integer> limitedList = list.stream().limit(3).collect(Collectors.toList());
// 输出:[1, 2, 3]

reduce:对集合中的元素进行归约操作。

List<Integer> list = Arrays.asList(1, 2, 3, 4, 5);
int sum = list.stream().reduce(0, Integer::sum);
// 输出:15