Verwendung des Elvis-Operator in Kotlin

Kailash Vaviya 15 Februar 2024
  1. Verwenden Sie den Elvis-Operator in Kotlin
  2. Fazit
Verwendung des Elvis-Operator in Kotlin

Erinnern Sie sich an den ternären Operator von Java? Elvis-Operator in Kotlin ist so etwas Ähnliches.

Das Symbol des Elvis-Operators ist ein Fragezeichen gefolgt von einem Doppelpunkt (?:). Es ist ein binärer Operator, der zwei Ausdrücke auswertet.

Wenn der linke Ausdruck nicht null ist, wird die Referenz oder der Wert in diesem Ausdruck verwendet. Wenn der linke Ausdruck jedoch eine Nullreferenz hat, wird der rechte Ausdruck ausgeführt.

Der Elvis-Operator wertet den Ausdruck auf der rechten Seite nur aus, wenn der Ausdruck auf der linken Seite null ist.

Verwenden Sie den Elvis-Operator in Kotlin

Angenommen, Sie haben einen Nullwert in einer Variablen, möchten aber nur einen Nicht-Nullwert verwenden. Sie können dies mit einer if-else-Anweisung tun.

fun main(args: Array<String>) {
    var str: String? = null
    var str1: String? = "Hi, Welcome!"
    var l:  Int = if (str != null) str.length else -1
    var l1:  Int = if (str1 != null) str1.length else -1
    println("str's legth is ${l}")
    println("str1's length is ${l1}")
}

Ausgabe:

Verwenden von if-else für bedingte Anweisungen

Der Elvis-Operator ermöglicht das Kürzen des obigen Codes. Wir können also den Elvis-Operator verwenden, anstatt die gesamte if-else-Anweisung zu schreiben.

Klicken Sie hier, um die Demo des Beispiels zu überprüfen.

Hier ist ein Beispiel für den Elvis-Operator. Wir werden versuchen, dieselben Ergebnisse wie im obigen Code auszuführen, diesmal jedoch mit dem Elvis-Operator.

fun main(args: Array<String>) {
    var str: String? = null
    var str1: String? = "Hi, Welcome!"
    var l:  Int = str ?.length ?: -1
    var l1:  Int = str1 ?.length ?: -1
    println("str's legth is ${l}")
    println("str1's length is ${l1}")
}

Ausgabe:

Mit Elvis-Operator

Klicken Sie hier, um die Demo des Beispiels zu überprüfen.

Fazit

Wir können auch den Elvis-Operator in Kotlin für Null-Sicherheitsprüfungen verwenden. Da throw und return Ausdrücke sind, können wir sie auf der rechten Seite des Elvis-Operators für die Nullsicherheitsprüfung verwenden.

Kailash Vaviya avatar Kailash Vaviya avatar

Kailash Vaviya is a freelance writer who started writing in 2019 and has never stopped since then as he fell in love with it. He has a soft corner for technology and likes to read, learn, and write about it. His content is focused on providing information to help build a brand presence and gain engagement.

LinkedIn

Verwandter Artikel - Kotlin Operator