Kotlin
lazy
lateinit

kotlin備忘録

by lazy

by lazyは始めて呼び出されるときに引数に渡されたものが実行される

fun lazy(){
  var firstName = "first"
  var familyName = "family"
  val fullName : String by lazy{
    firstName + " " + familyName
  }

  firstName = "変えたよ"
  familyName = "ふぁみりー"

  println(fullName) //変えたよ ファミリー

  firstName = "もう一回変えたよ"

  println(fullName) //変えたよ ファミリー

}

lateinit

lateinit var hoge : String

初期化を後にできる
初期化する前に読み込むとクラッシュ