Predicate是个断言式接口其参数是<T,boolean>,也就是给一个参数T,返回boolean类型的结果。跟Function一样,Predicate的具体实现也是根据传入的lambda表达式来决定的。
@Test
public void predicate(){
/**
* Predicate谓词测试,谓词其实就是一个判断的作用类似bool的作用
*/
//① 使用Predicate接口实现方法,只有一个test方法,传入一个参数,返回一个bool值
Predicate<Integer> predicate = new Predicate<Integer>() {
@Override
public boolean test(Integer integer) {
if(integer > 5){
return true;
}
return false;
}
};
System.out.println(predicate.test(6));
System.out.println("********************");
//② 使用lambda表达式,
predicate = (t) -> t > 5;
System.out.println(predicate.test(1));
System.out.println("********************");
}
}