Heim > Java > javaLernprogramm > Wie kann ich einen Java-String aufteilen und alle leeren Werte behalten, einschließlich der nachfolgenden?

Wie kann ich einen Java-String aufteilen und alle leeren Werte behalten, einschließlich der nachfolgenden?

DDD
Freigeben: 2024-12-20 19:50:24
Original
847 Leute haben es durchsucht

How Can I Split a Java String and Keep All Empty Values, Including Trailing Ones?

Java-Strings aufteilen, ohne leere Werte zu entfernen

Beim Versuch, einen Java-String mit der Methode „split(String regex)“ zu teilen, könnte man erwarten um leere Werte im resultierenden Array beizubehalten, insbesondere wenn sie irgendwo innerhalb der Zeichenfolge liegen. Standardmäßig entfernt die Split-Methode jedoch nachgestellte leere Werte aus dem Ausgabearray.

Betrachten Sie den folgenden Code:

String data = "5|6|7||8|9||";
String[] split = data.split("\|");
System.out.println(split.length);
Nach dem Login kopieren

In diesem Beispiel erwarten wir, dass wir bei der Aufteilung acht Werte erhalten Array, einschließlich leerer Zeichenfolgen: [5, 6, 7, EMPTY, 8, 9, EMPTY, EMPTY]. Aufgrund der automatischen Entfernung abschließender leerer Zeichenfolgen erhalten wir jedoch unerwarteterweise nur sechs Werte.

Um dieses Problem zu beheben, können wir die überladene Methode „split(String regex, int limit)“ nutzen, bei der „limit“ festgelegt ist auf einen negativen Wert. Dadurch wird die Methode angewiesen, nachgestellte leere Zeichenfolgen nicht zu entfernen.

String[] split = data.split("\|", -1);
Nach dem Login kopieren

Durch Aufrufen der überladenen Version überschreiben wir das Standardverhalten und behalten alle leeren Werte im geteilten Array bei, unabhängig von ihrer Position.

Zusätzliche Erkenntnisse

Es ist wichtig zu beachten, dass das Standardverhalten das Entfernen abschließender leerer Zeichenfolgen ist Gilt nur, wenn diese leeren Zeichenfolgen als Ergebnis des Aufteilungsprozesses generiert werden. Das bedeutet, dass, wenn in der ursprünglichen Eingabezeichenfolge eine leere Zeichenfolge vorhanden ist (z. B. „.split(anything)), diese im resultierenden Array verbleibt, da sie nicht durch den Aufteilungsmechanismus eingeführt wurde.

Diese Granularität Das Verständnis des Verhaltens der Split-Methode stellt sicher, dass Entwickler eine bessere Kontrolle über den Inhalt ihrer Ausgabearrays haben, wenn sie mit potenziell leeren Werten arbeiten.

Das obige ist der detaillierte Inhalt vonWie kann ich einen Java-String aufteilen und alle leeren Werte behalten, einschließlich der nachfolgenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage