Java String-Klassenmethoden, die ein wenig nützlich sind, aber nicht bekannt sind

In diesem Artikel werde ich die String-Klassenmethoden von Java 11 zusammenfassen, die nützlich, aber nicht überraschend bekannt sind, mit willkürlichem Urteilsvermögen und Vorurteilen. Lassen Sie uns anhalten und die Klassen überprüfen, mit denen wir vertraut sind, um kürzeren und besseren Code zu erhalten.

Leerzeichen entfernen

Beim Schreiben von Geschäftscode stoße ich hunderte Male darauf, wenn ich die Leerzeichen vor und nach einer Zeichenfolge entfernen möchte. Zu diesem Zeitpunkt verwenden Sie häufig die Trimmmethode.

"   aaa   ".trim(); // aaa

Bei der Trimmmethode werden Leerzeichen in voller Breite jedoch nicht gelöscht. Die Strip-Methode ist nützlich, wenn Sie Leerzeichen in voller Breite löschen möchten. Die Strip-Methode entfernt leere Zeichen, die vorher und nachher Doppelbyte-Leerzeichen enthalten.

"   aaa   ".strip(); // aaa
"    aaa   ".strip(); // aaa

Wenn Sie nur die erste Zeichenfolge löschen möchten, verwenden Sie "Strip Leading". Sie können "Strip Trailing" verwenden, wenn Sie nur die Trailer entfernen möchten.

Zeichenwiederholung

Schreiben Sie beim Schreiben eines Testcodes zum Überprüfen der Anzahl der Ziffern in einer Zeichenfolge häufig den folgenden Quellcode?

lengthCheck("aaaaa");

Wenn Sie ungefähr 5 Stellen überprüfen, gibt es kein Problem, aber wenn es 120 Stellen oder so sind, ist es vor allem mühsam und schmutzig. In einem solchen Fall ist die "Wiederholungs" -Methode nützlich.

"a".repeat(5); // aaaaa

Dies ist eine bequeme Methode, mit der die angegebene Zeichenfolge wiederholt werden kann. Da die Länge der Zeichenfolge durch das Wiederholungsargument verwaltet werden kann, Lassen Sie es uns aktiv im Testcode des Ziffernprüfsystems verwenden, um es klar und leicht verständlich zu machen.

Nützlich beim Erstellen von CSV

Ich denke, dass es beim Erstellen einer Geschäftsanwendung üblich ist, eine CSV-Datei zu erstellen und sie mit anderen Systemen zu verknüpfen. Die Methode, die Sie in einem solchen Fall kennen möchten, ist die "Join" -Methode. Bei Verwendung dieser Methode wird die Zeichenfolge durch Kommas getrennt Es wird leicht zu machen sein.

String.join(",", "a","b","c"); // a,b,c

Natürlich können die im Array gespeicherten Zeichen auch Zeichenfolgen mit Trennzeichen sein.

String[] a = {"a","b","c"};
String.join(",", a);  // a,b,c

Für Leute, die Strings nicht mit Gleichen vergleichen wollen

Dies ist die Methode equals, die in Java häufig beim Vergleichen von Zeichenfolgen verwendet wird. Sie können jedoch auch die Standard-String-Methode verwenden, um String-Vergleiche durchzuführen.

String t = new String("a");
String s = new String("a");
    
t == s // false
t.intern() == s.intern() // true

Wenn Sie sich JavaDoc ansehen, sehen Sie, dass der Fall, in dem intern wahr ist, der gleiche ist wie t.equals (s). Wenn Sie eine andere Sprache lernen und mit Gleichgestellten nicht vertraut sind, können Sie sie verwenden. (Ich sehe nicht viele Leute, die es bei der Arbeit benutzen)

Beurteilung von Leerzeichen, wenn StringUtils von Apache nicht verwendet werden können

In schweren Situationen kann OSS nicht verwendet werden und StringUtils kann in einigen Fällen nicht verwendet werden. In einem solchen Fall sollten Sie die isBlank-Methode kennen. Sie können leere Zeichen mit der String-Standardmethode beurteilen.

String s = "";     //Leere Zeichen
String t = " ";    //Raum halber Breite
String r = " ";   //Raum in voller Breite
String i = null;   // null
    
s.isBlank(); // true
t.isBlank(); // true
r.isBlank(); // ture
i.isBlank(); // true

Es sollte beachtet werden, dass wenn es null ist, es eine Nullzeigerausnahme wird. (Natürlich) IsEmpty ist übrigens nur dann wahr, wenn die Länge 0 ist, daher ist die Verwendung unterschiedlich.

Zusammenfassung

Es gibt viele Methoden, die überraschend praktisch sind und eine kleine Wendung haben. Sobald Sie JavaDoc überprüft haben, sind Ihre Probleme möglicherweise behoben. (Wir werden es weiterhin in diesem Artikel veröffentlichen, sobald wir einen bequemen Weg finden, es zu verwenden.)

Referenzmaterial

String

Recommended Posts

Java String-Klassenmethoden, die ein wenig nützlich sind, aber nicht bekannt sind
Verschiedene Methoden der Java String Klasse
Verwendung von Klassenmethoden [Java]
[Java] Wie man mit der String-Klasse an die Spitze eines bestimmten Strings kommt
Code zum Escapezeichen von JSON-Zeichenfolgen in Java
So erstellen Sie eine Klasse, die Klasseninformationen erbt
So konvertieren Sie einen Soliditätsvertrag in eine Java-Vertragsklasse
Java-Klassenmethoden
String-Klassenmethoden
Funktionen, die derzeit wahrscheinlich in Java 10 eingegeben werden
Schreiben einer Klasse, die in Java bestellt werden kann Ein kleines Standard-Memo
[Java] So schneiden Sie eine Zeichenfolge zeichenweise aus
[Java] So löschen Sie ein bestimmtes Zeichen aus einer Zeichenfolge
Wie man Arrays mit Java stapelweise initialisiert, wusste ich als Anfänger nicht
Eine kurze Zusammenfassung der Java 8-Datums- / Uhrzeit-APIs, die wahrscheinlich häufig verwendet werden
Informationen zur Java String-Klasse
11 Artikel Ich weiß nicht, ob es gut ist, etwas über JAVA zu wissen
Konvertieren Sie ein Java-Byte-Array in eine hexadezimale Zeichenfolge
Speichern von Zeichenfolgen von ArrayList zu Zeichenfolge in Java (Personal)
Ich habe versucht, in Java von einer Zeichenfolge in einen LocalDate-Typ zu konvertieren
[MQTT / Java] Implementierte eine Klasse, die Pub / Sub von MQTT in Java ausführt
[Einführung in Java] Umgang mit Zeichenfolgen (String-Klasse, StringBuilder-Klasse)
[Java] Code, der schwer zu bemerken, aber furchtbar langsam ist