2017-02-13 20 views
0

私はKotlinに匿名のラムダ関数を書いていますが、渡された引数を取らないようです。 (IDEは "変数 '名前' のを使用されることはありません" というヒントので、それは、まったく渡されません。)Kotlinの匿名ラムダ関数に引数を渡すには?

コード:

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

+1

あなたは引数を関数に渡していません。関数を定義していて、呼び出していません。 – marstran

+0

私はそれを記述しました。 –

+0

私はそれを読んだ。それでは何が問題なの?期待される成果は? – marstran

答えて

5

パラメータを持つ関数は、それが

val name = "Tobias Boon" 
println("reverse=" + fun(name: String) : String { 
    ... 
     return t 
}(name)) 

ところで、あなたの特定の例は、すでに標準リットルで実装されているべきです図書館:

println(name.reversed()) 
+2

ありがとう、それは私が探していたものです! "name.reversed()"あなたはこれで私を運んでいますか? :) –

+0

ちょうどそれを試してください、私は知っているすべての 'CharSequence'のために働いています –

+0

このコードで私の意図は、文字列を逆にするのではなく、ラムダについて学ぶことでした。 –

関連する問題