java8 Predicate 源码详解示例

本文介绍了Java8中的Predicate接口,它用于定义逻辑判断函数。重点讲解了核心方法test,以及组合判断方法and、or和negate。通过示例展示了如何使用Predicate进行条件判断,并探讨了isEqual方法在简化equals判断上的应用。
摘要由CSDN通过智能技术生成

1. 简介

       java8开始引入函数式编程,该接口用来定义逻辑判断的函数,类似于单元测试的Assert。通过实现Predicate来定义测试的标准,返回是否测试通过,核心方法就是test,传入待测试的值,返回测试结果(boolean类型)。该接口默认实现了组合的测试方式,支持【且/and】、【或/or】、【非/negate】的组合判断。

2. 方法说明

2.1. test

       测试方法,也是该接口的核心方法,根据测试的规则,判断输入的参数是否测试通过,示例如下:

Predicate<Integer> predicate = new Predicate<Integer>() {
    @Override
    public boolean test(Integer i) {
        return i > 10;
    }
};
//Lambda方式定义:
Predicate<Integer> predicate = i -> i > 10;

执行该测试只需要test方法即可,如:boolean result = predicate.test(2);

2.2. and、or和negate

       这三个方法分别表示【且】、【或】和【非】,这些表达式支持组合使用,组成复杂的表达式,综合示例如下:

//定义表达式:(i > 10) && (i
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值