Lambda 函式
Lambda 函式是匿名函式,通常在函式呼叫期間建立以充當函式引數。它們由帶有{braces}的周圍表示式宣告 - 如果需要引數,則將它們放在箭頭 ->
之前。
{ name: String ->
"Your name is $name" //This is returned
}
lambda 函式中的最後一個語句自動返回值
如果將 lambda 放在編譯器可以推斷型別的位置,則型別是可選的。
多個引數:
{ argumentOne:String, argumentTwo:String ->
"$argumentOne - $argumentTwo"
}
如果 lambda 函式只需要一個引數,那麼可以省略引數列表,而使用 it
來引用單個引數。
{ "Your name is $it" }
如果函式的唯一引數是 lambda 函式,則可以從函式呼叫中完全省略括號。
# These are identical
listOf(1, 2, 3, 4).map { it + 2 }
listOf(1, 2, 3, 4).map({ it + 2 })