Sobes.tech
Junior

Kas ir 'run' bloks Kotlinā un kā tas tiek izmantots?

sobes.tech AI

Atbilde no AI

Kotlin run bloks ir Kotlin standarta bibliotēkā iebūvēta redzeslauka funkcija. To izmanto:

  1. Koda bloka izpilde uz objekta: To izsauc uz objektu un izpilda lambda izteiksmi, kas tiek nodrošināta kā arguments. Lambda iekšienē objekts ir pieejams kā this.
  2. Rezultāta atgriešana: Atgriež pēdējās izteiksmes rezultātu lambda iekšienē.
  3. nullable objekti: Ir ērts darbā ar nullable objektiem, jo, izmantojot drošības izsaukuma operatoru ?., run bloks tiks izpildīts tikai tad, ja objekts nav null.

Galvenās īpašības:

  • Resivieris (this): Objekts, uz kura izsaukts run, ir pieejams lambda iekšienē kā this.
  • Atgrieztā vērtība: Pēdējās izteiksmes rezultāts lambda iekšienē.

Izmantošanas piemēri:

// 1. piemērs: koda izpilde uz objekta un rezultāta atgriešana
val length: Int = "kāds teksts".run {
    // 'this' šeit attiecas uz "kāds teksts"
    println("Teksta garums: ${this.length}")
    length // Atgriež teksta garumu
}
// 2. piemērs: darbība ar nullable objektu
val nullableString: String? = "cits teksts"
val upperCaseString: String? = nullableString?.run {
    // Bloks tiks izpildīts tikai, ja nullableString nav null
    toUpperCase() // Atgriež tekstu lielajā burta formā
}

val anotherNullableString: String? = null
val anotherUpperCaseString: String? = anotherNullableString?.run {
    // Bloks netiks izpildīts, run?. atgriezīs null
    toUpperCase()
}
// 3. piemērs: objekta izveide un konfigurācija
val person = run {
    val name = "Alise"
    val age = 30
    Person(name, age) // Pieņemot, ka ir Person klase
}