java.util.function.Predicate<T>接口
作用:对某些数据的数据类型进行判断,结果返回一个boolean值
Predicate接口中包含一个抽象方法:
boolean test(T t):用来指对数据类型进行判断方法
结果:
符合条件:true
不符合条件:false
实现:
public static boolean checkString(String s, Predicate<String> pre){ return pre.test(s); } public static void main(String[] args) { String s = "abcdef"; // boolean b = checkString(s,(String str)->{ // return str.length()>5; // }); //优化Lambda表达式 boolean b = checkString(s,str->str.length()>5); System.out.println(b); }
常用的函数式接口_Predicate接口_默认方法and方法
逻辑表达式:可以连接多个判断的条件
&&:与运算符,有false则false
||:或运算符,有true则true
!:非(取反)运算符,非真则假,非假则真
需求:判断一个字符串,有两个判断的条件
1.判断字符串的长度是否大于5
2.判断字符串中是否包含a
两个条件必须同时满足,我们就可以使用&&运算符连接两个条件
Predicate接口中有一个方法and,表示并且关系,也可以用于连接两个判断条件
default Predicate<T> and(Predicate<? super T> other) {
Objects.requireNonNull(other);
return (t) -> this.test(t) && other.test(t);
}
方法内部的两个判断条件,也是使用&&运算符连接起来的
实现:
public static boolean checkString(String s, Predicate<String> pre1,Predicate<String> pre2){ //return pre1.test(s) && pre2.test(s); return pre1.and(pre2).test(s); } public static void main(String[] args) { String s = "abcdef"; boolean b = checkString(s,(String str)->{ return str.length()>5; },(String str)->{ return str.contains("a"); }); System.out.println(b); }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)