Zählen von Null-Elementen
In den vorherigen Schritten haben wir gelernt, wie man null
-Elemente in einem Array sowohl mit einer for
-Schleife als auch mit der Stream-API identifiziert. Manchmal müssen Sie möglicherweise nicht nur die null
-Elemente identifizieren, sondern auch genau wissen, wie viele null
-Elemente in einem Array vorhanden sind. In diesem Schritt lernen wir, wie man die Anzahl der null
-Elemente mit der Stream-API zählt.
Die Stream-API bietet eine bequeme Methode namens count()
, die, wenn sie auf einen Stream angewendet wird, die Anzahl der Elemente in diesem Stream zurückgibt. Wir können dies mit der filter()
-Operation kombinieren, die wir zuvor verwendet haben, um nur die null
-Elemente zu zählen.
Lassen Sie uns unser HelloJava.java
-Programm noch einmal ändern, um die null
-Elemente zu zählen und die Gesamtanzahl auszugeben.
-
Öffnen Sie die Datei HelloJava.java
im WebIDE-Editor.
-
Ersetzen Sie den vorhandenen Code durch folgenden:
import java.util.Arrays;
import java.util.Objects;
public class HelloJava {
public static void main(String[] args) {
String[] names = new String[5];
names[0] = "Alice";
names[1] = "Bob";
names[2] = null;
names[3] = "Charlie";
names[4] = null;
System.out.println("Counting null values using Stream API:");
// Convert the array to a Stream
long nullCount = Arrays.stream(names)
// Filter for null elements
.filter(Objects::isNull)
// Count the remaining elements (which are null)
.count();
System.out.println("Total number of null elements: " + nullCount);
}
}
Hier ist, was neu ist:
long nullCount = ... .count();
: Nachdem wir den Stream gefiltert haben, um nur null
-Elemente zu enthalten, rufen wir die Endoperation count()
auf. Diese Operation gibt die Anzahl der Elemente im gefilterten Stream als long
-Wert zurück, den wir in der Variable nullCount
speichern.
System.out.println("Total number of null elements: " + nullCount);
: Diese Zeile gibt die endgültige Anzahl der null
-Elemente aus.
-
Speichern Sie die Datei HelloJava.java
.
-
Kompilieren Sie das Programm im Terminal:
javac HelloJava.java
-
Führen Sie das Programm aus:
java HelloJava
Sie sollten die folgende Ausgabe sehen:
Counting null values using Stream API:
Total number of null elements: 2
Diese Ausgabe zeigt, dass unser Programm die beiden null
-Elemente im Array korrekt gezählt hat. Die gemeinsame Verwendung der filter()
- und count()
-Methoden der Stream-API ist eine effiziente und lesbare Möglichkeit, bestimmte Arten von Elementen in einer Sammlung, einschließlich null
-Werten, zu zählen.
Sie haben nun drei verschiedene Methoden gelernt, um null
-Werte in einem Java-Array zu behandeln: die Verwendung einer herkömmlichen for
-Schleife, um jedes Element zu prüfen, die Verwendung der Stream-API, um null
-Elemente zu filtern und zu identifizieren, und die Verwendung der Stream-API, um null
-Elemente zu filtern und zu zählen. Diese Techniken sind grundlegend für das Schreiben von robustem Java-Code, der NullPointerException
s vermeidet.