stream().filter和stream().map的区别
时间: 2023-08-17 18:14:53 浏览: 232
stream.js 一个很小、完全独立的Javascript类库
stream().filter和stream().map是Java 8中Stream API中的两个常用操作方法。
stream().filter用于过滤Stream中的元素,根据指定的条件筛选出满足条件的元素。它接受一个Predicate参数,该参数是一个函数式接口,用于定义过滤条件。只有满足条件的元素才会被保留下来。
stream().map用于对Stream中的每个元素进行映射转换。它接受一个Function参数,该参数是一个函数式接口,用于定义元素的映射规则。通过对每个元素应用映射规则,可以将原始的Stream转换为一个新的Stream。
区别在于:
- filter操作是用来过滤元素的,它根据指定的条件筛选出满足条件的元素,返回一个新的Stream。只有满足条件的元素会被保留下来。
- map操作是用来映射转换元素的,它对Stream中的每个元素应用映射规则,返回一个新的Stream。原始的Stream中的每个元素都会经过映射规则转换,生成一个新的元素。
总结起来,filter操作是用来筛选元素,而map操作是用来转换元素。它们可以结合使用,以实现更复杂的数据处理需求。
阅读全文