CodeGym/Java-Blog/Random-DE/Java String trim()-Methode
John Squirrels
Level 41
San Francisco

Java String trim()-Methode

Veröffentlicht in der Gruppe Random-DE
Auch wenn die beiden Zeichenfolgen für Sie gleich aussehen, ist dies möglicherweise nicht der Fall. Beispielsweise können sie führende und nachfolgende Leerzeichen enthalten. Der Computer „sieht“ es, wir jedoch nicht. Java verfügt über eine spezielle trim()- Methode, um nachgestellte und führende Leerzeichen aus einer Zeichenfolge zu entfernen. In diesem Artikel erklären wir die Verwendung der Java-String- Trim()- Methode in einem Java-Programm und stellen einige Codebeispiele bereit.

Signatur der Java String trim()-Methode

Die Signatur der trim()- Methode in Java lautet wie folgt:
public String trim()
Wie Sie sehen, benötigt es keine Parameter und gibt einen String-Wert zurück. Es gibt die Kopie der ursprünglichen Zeichenfolge zurück, wobei jedoch alle führenden und nachfolgenden Leerzeichen entfernt wurden. Wichtiger Hinweis: Ein Leerzeichen ist jedes Zeichen mit einem ASCII-Code kleiner oder gleich „U + 0020“. Wenn unser String eine leere Zeichenfolge ist oder das erste und das letzte Zeichen der durch dieses String- Objekt dargestellten Zeichenfolge Nicht-Leerzeichen-Codes (wie oben definiert) haben, wird ein Verweis auf dieses String- Objekt zurückgegeben. Wenn alle Zeichen in unserem String Leerzeichen sind, wird ein String- Objekt zurückgegeben, das einen leeren String darstellt. Wenn am Anfang und Ende der Zeile keine Leerzeichen stehen, gibt die Methode die Zeile selbst unverändert zurück.

Beispiel für die Methode „Java String trim()“.

Lassen Sie uns zwei Zeichenfolgen mit und ohne Leerzeichen am Anfang und Ende ihres Textes haben. Der Text ist für beide Strings derselbe.
public class TrimDemo {
   public static void main(String[] args) {
//java string trim() method example

       String noSpacesString = "I am the Walrus";
       String withSpaceString = "    I am the Walrus ";

       //printing the both strings out to make sure they are different
       System.out.println(noSpacesString);
       System.out.println(withSpaceString);
       //let's print out two string comparisons. It's false
       //because they are different
       System.out.println(noSpacesString.equals(withSpaceString));
       //trim
       withSpaceString.trim();
       System.out.println(noSpacesString.equals(withSpaceString));
       System.out.println(noSpacesString);
       System.out.println(withSpaceString);
   }
}
Die Ausgabe ist:
Ich bin das Walross. Ich bin das Walross. Falsch. Falsch. Ich bin das Walross. Ich bin das Walross
Warte was?? Es scheint, dass die Java-Methode string trim() nicht funktioniert! Die ersten beiden Zeichenfolgen sind unterschiedlich, wie sie sein sollten (die erste hat keine Ränder, die zweite hat drei Leerzeichen vor und eines nach dem Text). Dann verglichen wir die beiden Zeilen und druckten das Ergebnis aus. Es ist offensichtlich falsch, da diese Zeilen unterschiedlich sind. Danach haben wir die Trim-Methode auf die Zeichenfolge mit Leerzeichen an den Rändern angewendet und die Zeichenfolgen erneut verglichen ... und aus irgendeinem Grund haben wir erneut „false“ erhalten, obwohl sie jetzt gleich sein sollten! Dann haben wir uns für alle Fälle entschieden, die Zeilen selbst auszudrucken. Was passiert, wenn ein Wunder geschieht? Leider ... Die Linien waren anders und sind es immer noch. Haben Sie schon erraten, wo das Problem liegt? Der Punkt ist, dass Strings in Java unveränderliche Objekte sind. Die Methode trim() gibt also nicht die ursprüngliche Zeichenfolge zurück, sondern eine neue. Wie auch immer, wir sollten die trim()- Methode hier testen, also schreiben wir ein anderes Programm. Hier benennen wir eine Kopie des Strings, der als Ergebnis der trim()- Methode erstellt wurde, um damit zu arbeiten. Lassen Sie uns auch die beiden Zeichenfolgen auf Äquivalenz prüfen.
public class TrimDemo2 {
   public static void main(String[] args) {
       String noSpacesString = "I am the Walrus";
       String withSpaceString = "    I am the Walrus ";
       String result = withSpaceString.trim();
       System.out.println(noSpacesString);
       System.out.println(result);
       System.out.println(noSpacesString.equals(result));
   }
}
Hier ist die Ausgabe:
Ich bin das Walross, ich bin das wahre Walross
Bingo! Jetzt funktioniert es wie erwartet. Denken Sie an die Unveränderlichkeit von Strings , sie ist für jeden Java-Entwickler sehr wichtig.
Kommentare
  • Beliebt
  • Neu
  • Alt
Du musst angemeldet sein, um einen Kommentar schreiben zu können
Auf dieser Seite gibt es noch keine Kommentare