JavaSE-java8-谓词复合的用法

java

谓词接口包括三个方法: negate、 and 和 or,让你可以重用已有的Predicate来创建更复杂的谓词

一、比如可以用negate方法来返回一个Predicate非

public class ColorPredicate implements Predicate<Apple> {

@Override

public boolean test(Apple apple) {

return false;

}

}

ColorPredicate greenOrange = new ColorPredicate();

// 产生现有Predicate对象greenOrange的非

Predicate<Orange> negateColor = greenOrange.negate();

二、还可以把两个Lambda用 and 或者 or连接起来

//连接两个谓词来生成另一个Predicate

Predicate<Orange> and = greenOrange.and(orange -> orange.getWeight() > 150);

//链接Predicate的

//方法来构造更复杂Predicate对象

Predicate<Orange> andOr =

greenOrange.and(orange -> orange.getWeight() > 150).or(orange -> "green".equals(orange.getColor()));

 

参考:

https://gitee.com/play-happy/base-project

【1】《Java8实战》

以上是 JavaSE-java8-谓词复合的用法 的全部内容, 来源链接: utcz.com/z/393565.html

回到顶部