Il s'agit d'une interface fonctionnelle et peut donc être utilisée comme cible d'affectation pour une expression lambda ou une référence de méthode.
La définition d'un Consumer est "void accept(T t)". Le Consumer a un seul argument et ne retourne aucun objet.
@FunctionalInterface
public interface Consumer<T> {
void accept(T t);
// ...
}
Dans cet exemple nous alors utiliser le type String. Par conséquent, on aura Consumer<String>.
// Référence
final Consumer<String> print1 = System.out::println;
print1.accept("Alex"); // Alex
// Avec lambda
final Consumer<String> print2 = x -> System.out.println(x);
print1.accept("Claire"); // Claire
IntStream.range(0, 5).forEach(System.out::print); // 01234
LauLem.com - Conditions Générales d'Utilisation - Informations Légales - Charte relative aux cookies - Charte sur la protection des données personnelles - A propos