Stream.anyMatch API is
boolean anyMatch(Predicate<? super T> predicate)
I create a Class as follow:
class ClassA {
public boolean anyMethodName(Object o) {
return o instanceof Integer;
}
}
Then I can run following:
List<String> durunitList = Arrays.asList("h", "d", "w", "m", "y");
ClassA classA = new ClassA();
System.out.println(durunitList.stream().peek(System.out::println).anyMatch(classA::anyMethodName));
But in my ClassA, I haven’t implement interface Predicate and override its functional method
boolean test(T t)
Why classA::anyMethodName can still be passed to Stream.anyMatch(…)?