stream().filter(xxx)是 “过滤出“ 还是 “过滤掉“ xxx为true的? 是留下xxx为true的

背景

有时候看着这个代码,有点陌生

list.stream().filter(xxx).map(yyy).collect(zzz);

这个filter()究竟是 “过滤出” 还是 “过滤掉” xxx表达式为true的?

结论:xxx表达式为true的留下。

吐槽:真的很容易以为过滤掉xxx为true的,因为filter让人想到 “过滤”

补充

补充一下英语词组:关于 filter out sth 的含义? 我们读一些文档,有时候会遇到这个词组,那这个词组的意思是 “过滤掉sth” 还是 “过滤后留下sth” ?

filter out sth 是固定的搭配,就是 “滤除sth” 的意思。就是sth不要掉、过滤掉、滤除掉。

在这里插入图片描述

•  Children should have glasses which filter out UV rays. 
 孩子们应该佩戴可以滤除紫外线的眼镜。
•  Plants and trees filter carbon dioxide out of the air and produce oxygen. 
 植物和树木能滤除空气中的二氧化碳并制造出氧气。
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Java的流处理中,可以使用`.filter()`方法来过滤不符合特定条件的元素。这个方法接受一个`Predicate`函数式接口作为参数,用于定义过滤条件。当过滤条件返回`true`时,元素将被保留,而当过滤条件返回`false`时,元素将被排除。 举个例子,如果你有一个包含字符串的列表`list`,你可以使用`.filter()`方法来过滤长度小于5的字符串: ```java List<String> filteredList = list.stream().filter(s -> s.length() >= 5).collect(Collectors.toList()); ``` 在上面的例子中,`s -> s.length() >= 5`是一个Lambda表达式,它定义了过滤条件,即长度大于等于5的字符串将被保留。最后,使用`.collect(Collectors.toList())`方法将过滤后的元素收集到一个新的列表中。 所以,`java.stream().filter`过滤不为`true`的元素的操作可以通过定义一个过滤条件返回`false`的`Predicate`来实现。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [list.stream().filter()过滤](https://blog.csdn.net/weixin_44048668/article/details/119447164)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [java.util.stream.Stream 接口中的常用方法](https://blog.csdn.net/weixin_39776298/article/details/114432342)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值