Boa tarde, só para me abrir a mente. O código completo é esse.
import java.util.function.Predicate;
class A{
    int a = 0;
    public static void main(String[] args) {
        new A().method(1, a -> a > 0); // A
    }        
    private void method(int a, Predicate<Integer> d) {
        if(d.test(a)){ // B
            System.out.println(a);
        }
    }
}A dúvida está aqui:
 new A().method(1, a -> a > 0); // A
    }        
    private void method(int a, Predicate<Integer> d) {
        if(d.test(a)){ // BQuando ele chama d.test(a) na verdade ele está fazendo o teste la da expressão Lambda da linha "A" né? No caso a -> a>0E recebe false ou true certo?
 
            