如何将参数传递给Kotlin中的匿名lambda函数?
我想在Kotlin中编写一个匿名的lambda函数,但它看起来并没有传递给它的参数。 (这是不是在所有通过,因为IDE暗示 “变量 '名' 从未使用过”。)如何将参数传递给Kotlin中的匿名lambda函数?
代码:
var name = "Tobias Boon"
println("reverse=" + fun(name: String): String {
var t: String = ""
for(i in name.indices.last downTo 1) {
t += text.subSequence(i - 1, i)
}
return t
})
目前打印:reverse=(kotlin.String) -> kotlin.String
你永远不会调用带参数的函数,应该是
val name = "Tobias Boon"
println("reverse=" + fun(name: String) : String {
...
return t
}(name))
顺便说一句,你的具体例子已经在标准l书库:
println(name.reversed())
谢谢,那是我寻找! “name.reversed()”是你用这个拖动我的吗? :) –
只是尝试一下,适用于任何'CharSequence'我知道的 –
。我用这段代码的目的是了解lambdas,而不是反转字符串。 –
你没有传递任何参数到函数。你正在定义一个函数,而不是调用它。 – marstran
我知道,我表示它的描述。 –
我读过它了。那么问题是什么?你的预期产出是多少? – marstran