我了解谓词的基础知识并理解从 this question 复制的以下代码
Predicate<Integer> isEven = new Predicate<Integer>() {
@Override public boolean apply(Integer number) {
return (number % 2) == 0;
}
};
Iterable<Integer> evenNumbers = Iterables.filter(numbers, isEven);
但是是否可以为与谓词不匹配的项获取可迭代对象(无需更改谓词代码)?
最佳答案
Iterable<Integer> oddNumbers = Iterables.filter(numbers, Predicates.not(isEven));
关于java - 过滤时获取谓词的反转?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28094040/