列举多个例子生动形象地详细解释说明Java中stream流的结束方法
Java中的Stream流提供了多个结束方法,用于终止流的操作并返回结果。以下是几个常用的结束方法的例子:
- collect():将流中的元素收集到一个集合中。可以使用Collectors工具类提供的方法来指定收集的方式,例如将元素收集到List、Set、Map等容器中。
List<String> names = Stream.of("John", "Mary", "Tom")
.collect(Collectors.toList());
- forEach():对流中的每个元素执行指定的操作,没有返回值。可以使用Lambda表达式来定义操作。
Stream.of("apple", "banana", "orange")
.forEach(fruit -> System.out.println("I like " + fruit));
- toArray():将流中的元素转换为数组。可以指定数组的类型,如果不指定,则返回Object数组。
String[] fruits = Stream.of("apple", "banana", "orange")
.toArray(String[]::new);
- reduce():对流中的元素进行归约操作,返回一个Optional对象。可以使用Lambda表达式来定义归约操作,例如求和、求最大值等。
Optional<Integer> sum = Stream.of(1, 2, 3, 4, 5)
.reduce((a, b) -> a + b);
- min()和max():找出流中的最小值和最大值。需要传入一个Comparator对象来指定比较规则。
Optional<Integer> min = Stream.of(3, 1, 4, 1, 5, 9)
.min(Comparator.naturalOrder());
- count():返回流中的元素个数。
long count = Stream.of("apple", "banana", "orange")
.count();
这些结束方法可以根据具体的需求选择使用,可以通过链式调用多个方法来进行复杂的流操作。
原文地址: https://www.cveoy.top/t/topic/i55h 著作权归作者所有。请勿转载和采集!