Lambda误认为范围

时间:2018-09-10 15:29:54

标签: lambda kotlin

我正在尝试从when语句返回kotlin中的lambda:

fun main(args: Array<String>) {
    println(returnLambda(true)())
}

fun returnLambda(choice: Boolean): ()-> String {
    return when (choice) {
        true -> { "Hello" }
        false -> { "World" }
    }
}

但是{}被解释为范围解析而不是函数。有什么办法可以迫使Kotlin将其视为函数而不是范围?

0 个答案:

没有答案