owo
注:Lambda表达式是JDK8之后的语法
格式
1 | (形参) -> { |
例
1 | Arrays.sort(arr, (Integer o1, Integer o2) -> { |
- Lambda表达式可以用来简化匿名内部类的书写
- 只能简化函数式接口的匿名内部类的写法
- 有且只有一个抽象方法的接口是函数式接口
- 可以在接口上方加
@FunctionalInterface注解检查
函数式接口示例
1 |
|
Lambda的省略规则
- 参数类型可以省略
- 如果只有一个参数,类型和()都可以省略
- 如果Lambda表达式的方法体只有一行,大括号,分好,return都可以省略。如果省略,需要同时省略
例
1 | Arrays.sort(arr, (o1, o2) -> o1 - o2); |