详解Java8特性之Stream API补充

xiaoxiao2021-02-28  93

上一篇文章我介绍了Java 8的Stream API 详解Java8特性之Stream API,忘记补充一点了,Stream 不会改变源对象。相反,他们会返回一个持有结果的新Stream(这样可以链式编程)。

看下面例子

@Test public void test() { List<Integer> list = Arrays.asList(1, 2, 3, 4, 5, 6); list.stream()// .filter(x -> x > 3)// 筛选出大于3的元素 .forEach(System.out::println); System.out.println(list); }

输出结果

4 5 6 [1, 2, 3, 4, 5, 6]

可以看出虽然从流中筛选出大于3的元素,但是数据源list的内容并未被改变,这就好像是我们复制一个文件,而复制出来的文件进行任意修改都不会影响到原始文件。

转载请注明原文地址: https://www.6miu.com/read-58547.html

最新回复(0)