Nicht leere Werte mit der String-Split-Methode von Java abrufen
Beim Teilen eines Strings mit der Methode split() ist es wichtig zu verstehen, wie es behandelt leere Werte. Standardmäßig entfernt diese Methode abschließende leere Zeichenfolgenwerte aus dem resultierenden Array.
Um dieses Verhalten zu veranschaulichen, betrachten Sie den folgenden Code:
String data = "5|6|7||8|9||"; String[] split = data.split("\|"); System.out.println(split.length);
Das erwartete Ergebnis ist ein Array mit acht Elementen. einschließlich leerer Zeichenfolgen an den durch doppelte Pipe-Zeichen (||) gekennzeichneten Stellen. Es werden jedoch nur sechs Werte erhalten: [5,6,7,8,9].
Überschreiben des Standardverhaltens
Um nicht leere Werte abzurufen, verwenden Sie die überladene Version der Methode split(), die einen auf einen negativen Wert gesetzten Grenzwertparameter annimmt:
String[] split = data.split("\|", -1);
Durch Festlegen des Grenzwerts auf einen negativen Wert (-1 In diesem Fall wird das Muster so oft wie möglich angewendet und das Array enthält alle übereinstimmenden und nicht übereinstimmenden Werte, unabhängig davon, ob sie leer sind oder nicht.
Verstehen der Dokumentation
Die Dokumentation zur Methode split() liefert wertvolle Einblicke in ihr Verhalten:
Ausnahme von der Regel
Es ist wichtig zu beachten, dass das Entfernen abschließender leerer Zeichenfolgen nur für solche gilt, die durch den Split-Mechanismus erstellt wurden. Zeichenfolgen, die vor dem Teilen leer sind, gelten als Originalzeichenfolgen und werden nicht entfernt.
Das obige ist der detaillierte Inhalt vonWie kann die String-Methode „split()' von Java verwendet werden, um alle Werte abzurufen, auch leere?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!