Qu'est-ce que l'interface fonctionnelle Java 8 pour une méthode qui ne prend rien et ne renvoie rien?
C'est-à-dire l'équivalent de C # sans paramètre Action
avec void
type de retour?
Si je comprends bien, vous voulez une interface fonctionnelle avec une méthode void m()
. Dans ce cas, vous pouvez simplement utiliser un Runnable
.
Faites le vôtre
@FunctionalInterface
public interface Procedure {
void run();
default Procedure andThen(Procedure after){
return () -> {
this.run();
after.run();
};
}
default Procedure compose(Procedure before){
return () -> {
before.run();
this.run();
};
}
}
et l'utiliser comme ça
public static void main(String[] args){
Procedure procedure1 = () -> System.out.print("Hello");
Procedure procedure2 = () -> System.out.print("World");
procedure1.andThen(procedure2).run();
System.out.println();
procedure1.compose(procedure2).run();
}
et la sortie
HelloWorld
WorldHello