Lambda表达式
- Lambda表达式(也叫做闭包),将一个函数当作方法的参数(传递函数),或者说把代码当作数据.
- 闭包
- 一个含有*变量的函数,外部环境持有内部函数所使用的*变量,对内部函数形成“闭包”
- jdk1.8之前实现闭包通过内部类+接口
new Comparator<User>() { @Override public int compare(User o1, User o2) { return o1.getAge().compareTo(o2.getAge()); } })
- 语法结构
- () -> 表达式
- () -> { body }
- 用括号包裹,并以逗号分割的参数列表
- 箭头符号,->
- 函数体(body)——包括至少一句表达式,或这一个表达式块
- 案例一
Collections.sort(userList,(user1,user2)