Schnittstelle mit nur einer abstrakten Methode (statische und Standardmethoden werden ignoriert)
◆Functio<T,R>### -Konvertieren Sie den Wert des empfangenen Arguments -T = Methodenargumenttyp, R = Methodenrückgabetyp -Die abstrakte Methode ist R apply (T t)
Function<Integer,String> func = f -> f + "werden";
String s = func.apply(1);
System.out.println(s); //Werden Sie 1
◆Consumer<T> -Prozess mit dem empfangenen Argument (kein Rückgabewert) -T = Methodenargumenttyp -Abstrakt Methode ist akzeptieren (T t)
Consumer<String> dog = e -> System.out.println("hello," + e);
dog.accept("Shiba Hund");//hello,Shiba Hund
Wenn Sie ohne Verwendung des Lambda-Ausdrucks schreiben, ist dies wie folgt
Consumer<String> dog = new Consumer<String>() {
@Override
public void accept(String name) {
System.out.println("hello," + name);//hello,Shiba Hund
}
◆Predicate<T> -Judge mit dem empfangenen Argument und gib Boolean zurück -T = Methodenargumenttyp ・ Die abstrakte Methode ist Test (T)
Predicate<String> result = c -> {return c.equals("dog");};
boolean animal = result.test("cat");
System.out.println(animal);//false
Recommended Posts