Lambda表达式是一个匿名函数(无名函数),已作为参数传递给另一个函数。使用lambda表达式的主体时,我们需要遵循一些规则。
Lambda表达式主体的规则λ表达式的主体可以是一个单一的表达或更多的语句。
如果我们使用单个表达式作为lambda表达式的主体,则无需用花括号({})将主体括起来。
如果我们使用一个或多个语句作为lambda表达式的主体,则必须将它们括在花括号({})中。
语法(parameters) OR () -> {body with statements separated by;} OR Single Statement
示例interface Message {
String message(String name);
}
public class LambdaExpressionBodyTest {
public static void main(String args[]) {
// Lambda expression using single expressio
Message msg1 = msg -> "TutorialsPoint " + msg;
System.out.println(msg1.message("Lambda Expression With Expression")); // Lambda expression using statement
Message msg2 = msg -> { return "TutorialsPoint " + msg; };
System.out.println(msg2.message("Lambda Expression With Statement"));
// Lambda expression using multiple statements
Message msg3 = msg -> {
String hello = "TutorialsPoint " + msg;
return hello;
};
System.out.println(msg3.message("Lambda Expression With Multiple Statement"));
}
}
输出结果TutorialsPoint Lambda Expression With Expression
TutorialsPoint Lambda Expression With Statement
TutorialsPoint Lambda Expression With Multiple Statement