Bonsoir,

Je débute avec le java 8 et j'ai le bout de code suivant:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
public static void printPersonWithSupplier(List<Person> persons, Predicate<Person> tester, Consumer<Person> cons, Supplier<Person> sup){
       for(Person p:persons){
           if(tester.test(p)){
               cons.accept(p);
               sup.get();
           }
       }
   }
J'essaie d'implémenter cette méthode dans la fonction main() avec cette façon:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
printPersonWithSupplier(persons, p->p.getAge()<20, s->s.printPerson(),()->r.getName());
Mais j'ai toujours une erreur au niveau de ()->r.getName(), malgré que j'ai bien précisé que le type du Supplier est "Person", et j'ai bel et bien implémenté la méthode getName() dans la classe Person


C'est quoi mon erreur? merci d'avance.