Nullprüfung in Kotlin implementieren

Kailash Vaviya 15 Februar 2024
  1. Verwenden Sie bedingte Anweisungen, um eine Null-Prüfung in Kotlin zu implementieren
  2. Verwenden Sie Safe Calls, um eine Null-Prüfung in Kotlin zu implementieren
  3. Verwenden Sie den Elvis-Operator, um einen Null-Check in Kotlin zu implementieren
Nullprüfung in Kotlin implementieren

Mehrere primitive Typen akzeptieren keine null und werfen Fehler. Fehler, die mit null-Referenzen gemacht werden, können Anwendungsfehler oder sogar Systemabstürze verursachen; Daher ist es wichtig, null-Referenzen zu überprüfen, bevor ein Programm ausgeführt wird.

Kotlin ermöglicht es uns, null auf verschiedene Weise zu überprüfen. In diesem Artikel erfahren Sie, wie Sie in Kotlin nach null suchen und NullPointerException-Fehler verhindern.

Verwenden Sie bedingte Anweisungen, um eine Null-Prüfung in Kotlin zu implementieren

Der einfachste Weg, null in Kotlin zu überprüfen, ist die Verwendung von bedingten Anweisungen. Hier können wir Bedingungsoperatoren == oder != verwenden und die bedingten Anweisungen entsprechend ausführen.

Wir können auch === statt == und !== statt != verwenden. Eine strukturelle Gleichheit x == null wird ohnehin in referentielle Gleichheit x === null übersetzt; Daher macht es keinen großen Unterschied, ob Sie == oder === verwenden.

Hier ist ein Beispiel, um die Verwendung von Bedingungsanweisungen für die null-Prüfung in Kotlin zu zeigen.

fun main() {
    val x: String? = "Android"
    if (x != null && x.length > 0) {
        print("This is not null, its length is: ${x.length}")
    } else {
        print("This is a null string!")
    }
}

Ausgabe:

Verwenden von bedingten Anweisungen für die Kotlin-Nullprüfung

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

Wenn wir nun den Wert auf null ändern, wird die andere Ausgabe ausgegeben.

fun main() {
    val x: String? = null
    if (x != null && x.length > 0) {
        print("This is not null, its length is: ${x.length}")
    } else {
        print("This is a null string!")
    }
}

Ausgabe:

Verwenden von bedingten Anweisungen zum Überprüfen von Null in Kotlin

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

Bedingte Anweisungen funktionieren nur, wenn die Variable mit dem Schlüsselwort val deklariert wird. Das Schlüsselwort val macht das Wort unveränderlich.

Wenn wir eine var-Variable verwenden, besteht die Möglichkeit, dass sich der Wert der Variablen ändert, nachdem wir nach den null-Referenzen gesucht haben.

Verwenden Sie Safe Calls, um eine Null-Prüfung in Kotlin zu implementieren

Sichere Aufrufe sind eine weitere Option, um auf Nullable-Properties für die null-Prüfung in Kotlin zuzugreifen. Wir können den Safe-Call-Operator ?. verwenden. um das Ergebnis eines Ausdrucks zu überprüfen.

Basierend auf den Ausdrucksergebnissen können wir dann die weiteren Anweisungen ausführen.

Hier ist ein Beispiel.

fun main() {
    val v = "Android"
    val x: String? = null
    println(v?.length)
    println(x?.length)
}

Ausgabe:

Verwenden von sicheren Aufrufen für die Kotlin-Nullprüfung

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

Sichere Anrufe sind besonders nützlich beim Erstellen von Ketten. Wir können zum Beispiel schreiben:

a?.b?.c?.d

Wenn im obigen Beispiel a nicht null ist, wird es zu b verschoben. Wenn b nicht null ist, wird es zu c verschoben, und wenn c nicht null ist, wird es zu d verschoben.

Immer wenn der Compiler einen null-Wert findet, stoppt er die Ausführung und gibt null zurück.

Verwenden Sie sichere Aufrufe mit der let-Funktion, um mit der Null in Kotlin umzugehen

Wenn einer der Werte einer Liste null ist, gibt der Compiler normalerweise null zurück. Wir können jedoch die let-Funktion mit sicheren Aufrufen kombinieren, um nur mit Nicht-null-Werten einer Liste zu arbeiten.

Beispiel:

fun main() {
    val myList: List<String?> = listOf("David", "Virat", "Steve", null)
    for (i in myList) {
        i?.let { println(it) } // prints only non-null values
    }
}

Ausgabe:

Verwenden der let-Funktion mit sicheren Aufrufen für die Kotlin-Nullprüfung

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

Verwenden Sie den Elvis-Operator, um einen Null-Check in Kotlin zu implementieren

Eine weitere hervorragende Option für die Kotlin-Nullprüfung ist die Verwendung des Elvis-Operators ?:. Es wird einen Nicht-null- oder einen Standardwert zurückgeben, wenn es einen null-Wert in den Referenzen findet.

Es gibt zwei Ausdrücke: links und rechts vom Elvis-Operator. Wenn der Wert des linken Ausdrucks nicht null ist, gibt der Operator den Wert zurück, aber wenn der linke Ausdruck null ist, gibt der Elvis-Operator den Wert des Ausdrucks auf der rechten Seite zurück.

Der Schlüssel hier ist, dass der Elvis-Operator den rechten Ausdruck nur dann ausführt, wenn der linke Ausdruck null ist.

Beispiel:

fun main(args: Array<String>) {
    val i: String? = null
    val j: String = i ?: "Welcome! This is Kotlin Programming."
    // This print statement uses the Elvis operator
    println(i ?: j)
}

Ausgabe:

Verwenden des Elvis-Operators für die Kotlin-Nullprüfung

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

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