lambda表达式实际上就是一个实现接口或接口函数的简写
它返回一个匿名类的实例
基本格式为(参数)->{语句或表达式}
*且注意 lambda表达式中不能声明变量,不能带if和for;
下面例子作为参考
interface Stringfunction{
String run(String str);
}//声明了一个接口
public class Main{
public static void main(String args[]){
Stringfunction str1 = (s)-> s+"!";//lambda表达式实现了接口,返回了一个匿名类实例,将之定义为输入字符串+!
Stringfunction str2 = (s)-> s+"?";//lambda表达式实现了接口,返回了一个匿名类实例,将之定义为输入字符串+?
printformated("Hello",str1);
printformated("How are you",str2);
}
public static void printformated(String str,Stringfunction fun)//这里fun必须是一个被实现的接口
{
String s = fun.run(str);//run.(str)返回了一个String对象,至于这个String对象具体是什么,则由main函数中的Lambda表达式具体得出
System.out.println(s);//将返回的String对象输出
}
}