检查是否未满足谓词条件?

时间:2017-11-09 19:01:18

标签: java predicates

我在测试我的谓词后打印一个列表,我想知道是否有办法检查是否符合条件?

2 个答案:

答案 0 :(得分:3)

更新:这里有link可以提供帮助。

public static Predicate<Employee> isAdultMale() {
        return p -> p.getAge() > 21 && p.getGender().equalsIgnoreCase("M");
    }

在上面的示例中,这是一个在满足条件时返回谓词的函数。所以类似的也许你可以使用它,当什么都没有打印时,那就是你怎么知道你的状况没有得到满足。

答案 1 :(得分:1)

因为您正在使用列表来检查谓词,所以选项1

Predicate<Integer> p = x -> x > 1;
List<Integer> mL = new ArrayList<>();
mL.add(1);
mL.add(2);
mL.add(3);

并使用noneMatchanyMatch

System.out.println(mL.stream().anyMatch(p));
System.out.println(mL.stream().noneMatch(p));

阅读文档,以便您可以对该结果进行正确的解释