如何否定方法引用谓词Predicate.not( … )
在 Java 8 中,可以使用方法引用来过滤流,例如:
Stream<String> s = ...;
long emptyStrings = s.filter(String::isEmpty).count();
有没有办法创建一个方法引用,它是对现有方法的否定,即类似的东西:
long nonEmptyStrings = s.filter(not(String::isEmpty)).count();
我可以创建如下方法,但我想知道JDK是否提供了类似的东西。not
static <T> Predicate<T> not(Predicate<T> p) { return o -> !p.test(o); }