java predicate_Predicate使用详解

java predicate_Predicate使用详解是什么 Predicatejav java util function 中 Function Supplier Consumer Predicate 和其他函数式接口广泛用在支持 lambda 表达式的 API 中 以此可以缩短 lambda 的长度和提高代码可阅读性 当然普通代码片段种用它来作为筛选条件也可以 Predicate 能做什么 Predicate 能为我们做些什么事儿呢 下面以数据赛选为例 Lis

是什么Predicate

java8,java.util.function中 Function, Supplier, Consumer, Predicate和其他函数式接口广泛用在支持lambda表达式的API中,以此可以缩短lambda的长度和提高代码可阅读性。当然普通代码片段种用它来作为筛选条件也可以。

Predicate能做什么

Predicate能为我们做些什么事儿呢?下面以数据赛选为例。

List personList= Stream.of(

new Person(21,”zhangsan”),

new Person(22,”leftso”),

new Person(23,”wangwu”),

new Person(24,”wangwu”),

new Person(25,”leftso”),

new Person(26,”zhangsan”)

).collect(Collectors.toList());

需求1:统计年龄大于22的人数量

代码实现:

Predicate personPredicate = x -> x.getAge() > 22;

Long count=personList.stream().filter(personPredicate).count();

System.out.println(count);

简述:第一步编写过滤条件personPredicate,第二部带入stream中进行过滤。

需求2:统计年龄大于22或者名字为leftso的人数量

咋一看这是个“或”关系的赛选,代码实现为:

Predicate personPredicate = x -> x.getAge() > 22;

personPredicate.or(x->”leftso”.equals(x.getName()));

long count=personList.stream().filter(personPredicate).count();

System.out.println(count);

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/224231.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 下午12:24
下一篇 2026年3月17日 下午12:24


相关推荐

  • ​内嵌物理知识神经网络(PINN)是个坑吗?

    ​内嵌物理知识神经网络(PINN)是个坑吗?PaperWeekly 原创 作者 zwqwo 单位 某知名券商计算机行业研究员研究方向 关注国产 CAD CAE 等工业软件发展从无网格方法到内嵌物理知识的神经网络内嵌物理知

    2026年3月18日
    3
  • cisco配置hsrp配置实例

    cisco配置hsrp配置实例1 实验环境使用 ciscopackett 模拟器实现网络拓扑配置 交换机使用 3560 路由器使用 2911 显示所有端口 Options gt Preferences gt 选中 AlwaysShowPo 2 网络拓扑如下 3 具体配置 PC1 目前只需要配置基础 ip 即可 我们使用路由器来模拟 PC 机 Router gt en

    2025年8月20日
    5
  • Harbor镜像仓库远程同步

    Harbor镜像仓库远程同步

    2021年5月31日
    181
  • Navicat相关注册码[通俗易懂]

    Navicat相关注册码[通俗易懂]Navicat相关注册码用户名和组织随便起。注册码如下 –NavicatforSQLServerV10.0.10NAVD-3CG2-6KRN-IEPMNAVL-NIGY-6MYY-XWQENAVI-C3UU-AAGI-57FW -NavicatPremium注册码NAVJ-E6YF-JULL-KKIGNAVE-BOCL-CE3X-TAGYNAVC-KAIA-NU5I-SPOXNAVL-…

    2025年8月15日
    9
  • 苹果手机怎么抓取京东ck(ios获取京东cookie)

    安卓手机抓取京东cookie手机下载Alook浏览器下载地址https://ddayh.lanzoui.com/ioHNNuzjunc打开Alook浏览器访问京东手机版网址https://m.jd.com/点击网页的右上角登陆账号(短信验证登录)登录完成以后点击浏览器中间的菜单键右滑一下找到工具箱->最下面的开发者工具->Cookies,拷贝注意获取到cookie后不能直接退出,否则cookie会立刻失效,关闭窗口即可。获取多账号cookie可以打开无痕窗口,没获取到一

    2022年4月15日
    876
  • python中多个if语句用法_if语句的用法

    python中多个if语句用法_if语句的用法python中if语句用法以下实例通过使用if…elif…else语句判断数字是正数、负数或零:推荐:《python教程》实例(Python3.0+)#Filename:test.py#authorby:www.php.cn#用户输入数字num=float(input(“输入一个数字:”))ifnum>0:print(“正数”)elifnum==…

    2026年4月14日
    12

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号