「Kotlin」遅延lazy()関数のサンプル

2020年12月4日

説明
lazy() はラムダをとり、遅延プロパティを実装するためのデリゲートとして機能する Lazy<T> のインスタンスを返す関数です。get() の最初の呼び出しは lazy() に渡されたラムダを実行し、結果を保持します。 それ以降、get() を呼び出すと、単に記憶された結果が返されます。

サンプルコード

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
val cftValue: String by lazy {
println("123456Abc!")
"Hello World"
}
fun main(args: Array<String>) {
println(cftValue)
println(cftValue)
}
val cftValue: String by lazy { println("123456Abc!") "Hello World" } fun main(args: Array<String>) { println(cftValue) println(cftValue) }
val cftValue: String by lazy {
    println("123456Abc!")     
    "Hello World"
}

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

実行結果
123456Abc!
Hello World
Hello World

Kotlin

Posted by arkgame