-
8.15 Lambda 表达式
-
我们也可以直接使用更简单的Lambda表达式来实现一个predicate函数:
list.filter { it % 2 == 1 }
.lambda 表达式总是被大括号 {} 括着
.其参数(如果有的话)在 -> 之前声明(参数类型可以省略)
.函数体(如果存在的话)在 -> 后面
上面的写法跟:
list.filter({ it % 2 == 1 })
等价,如果 lambda 是该调用的唯一参数,则调用中的圆括号可以省略。
使用Lambda表达式定义一个函数字面值:
>>> val sum = { x: Int, y: Int -> x + y } >>> sum(1,1) 2
我们在使用嵌套的Lambda表达式来定义一个柯里化的sum函数:
>>> val sum = {x:Int -> {y:Int -> x+y }} >>> sum (kotlin.Int) -> (kotlin.Int) -> kotlin.Int >>> sum(1)(1) 2
- 留下你的读书笔记
- 你还没登录,点击这里
-
用户笔记留言