Prüfen, ob ein Boolean-Wrapper null ist
In diesem Schritt werden wir untersuchen, wie man Boolean-Wrapper-Objekte in Java behandelt, wobei wir uns speziell auf die Prüfung darauf konzentrieren, ob ein Boolean-Objekt null ist. Im Gegensatz zum primitiven boolean-Typ, der nur true oder false sein kann, kann die Boolean-Wrapper-Klasse auch einen null-Wert enthalten. Dies ist eine häufige Ursache für NullPointerException, wenn es nicht sorgfältig behandelt wird.
Lassen Sie uns ein einfaches Java-Programm erstellen, um dies zu demonstrieren.
-
Öffnen Sie das Verzeichnis ~/project im Dateiexplorer auf der linken Seite der WebIDE.
-
Klicken Sie mit der rechten Maustaste in den leeren Bereich innerhalb des ~/project-Verzeichnisses und wählen Sie "Neue Datei".
-
Benennen Sie die neue Datei BooleanCheck.java und drücken Sie die Eingabetaste.
-
Öffnen Sie die Datei BooleanCheck.java im Code-Editor.
-
Kopieren und fügen Sie den folgenden Java-Code in den Editor ein:
public class BooleanCheck {
public static void main(String[] args) {
Boolean myBoolean = null;
// Versuch, ein null-Boolean direkt in einer Bedingung zu verwenden
// führt zu einer NullPointerException
// if (myBoolean) {
// System.out.println("This will not be printed if myBoolean is null.");
// }
// Korrekte Methode, um zu prüfen, ob ein Boolean-Wrapper null ist
if (myBoolean == null) {
System.out.println("myBoolean is null.");
} else {
System.out.println("myBoolean is not null.");
}
// Eine andere Möglichkeit, den booleschen Wert sicher zu prüfen
if (Boolean.TRUE.equals(myBoolean)) {
System.out.println("myBoolean is true.");
} else if (Boolean.FALSE.equals(myBoolean)) {
System.out.println("myBoolean is false.");
} else {
System.out.println("myBoolean is null (checked using equals).");
}
}
}
-
Speichern Sie die Datei, indem Sie Strg + S drücken (oder Cmd + S auf einem Mac).
-
Jetzt lassen Sie uns das Java-Programm kompilieren. Öffnen Sie das Terminal unten in der WebIDE. Stellen Sie sicher, dass Sie sich im Verzeichnis ~/project befinden. Wenn nicht, geben Sie cd ~/project ein und drücken Sie die Eingabetaste.
-
Kompilieren Sie den Code mit dem Befehl javac:
javac BooleanCheck.java
Wenn keine Fehler auftreten, wird der Befehl ohne Ausgabe abgeschlossen. Dies bedeutet, dass eine BooleanCheck.class-Datei im Verzeichnis ~/project erstellt wurde.
-
Führen Sie das kompilierte Java-Programm mit dem Befehl java aus:
java BooleanCheck
-
Sie sollten die folgende Ausgabe im Terminal sehen:
myBoolean is null.
myBoolean is null (checked using equals).
Diese Ausgabe bestätigt, dass unser Code das Boolean-Objekt korrekt als null identifiziert hat, indem es die Prüfung == null und das Muster Boolean.TRUE.equals() / Boolean.FALSE.equals() verwendet hat. Der auskommentierte Code zeigt, was passieren würde, wenn Sie versuchen würden, ein null-Boolean direkt in einer if-Bedingung zu verwenden, was zu einer NullPointerException führen würde.
Das Verständnis, wie man null-Boolean-Objekte sicher behandelt, ist entscheidend, um häufige Fehler in der Java-Programmierung zu vermeiden.