lambda表达式是一种匿名方法(没有名称的方法),可用于提供由函数接口定义的方法的实现。
语法
([comma seperated argument-list]) -> {body}
因为编译器能够猜测参数的类型,所以我们可以省略数据类型。当只有一个参数时,括号也被省略。
该箭头标记(→)可能够连接参数和功能。这是强制性的。
该主体包含语句 和表达式的列表。在单个语句或表达式的情况下,花括号已省略。
interface EvenOrOdd { void check(int a); } public class LambdaExpressionTest1 { public static void main(String[] args) { EvenOrOdd evenOrOdd = (int a) -> { // Lambda 表达式 if(a% 2== 0){ System.out.println("数字 "+ a +" 是奇数"); } else { System.out.println("数字 "+ a +" 是偶数"); } }; evenOrOdd.check(7); evenOrOdd.check(10); } }
输出结果
数字 7 是奇数 数字 10 是偶数