CodeGym/Blog Java/Random-PL/Metoda Java String trim().
John Squirrels
Poziom 41
San Francisco

Metoda Java String trim().

Opublikowano w grupie Random-PL
Nawet jeśli te dwa ciągi wyglądają dla ciebie tak samo, mogą nie być. Na przykład mogą mieć spacje początkowe i końcowe. Komputer „widzi” to, ale my nie. Java ma specjalną metodę trim() do usuwania końcowych i początkowych białych znaków z ciągu. W tym artykule wyjaśnimy, jak używać metody Java string trim() w programie Java i podamy kilka przykładów kodu.

Sygnatura metody Java String trim().

Sygnatura metody trim() w Javie jest następująca:
public String trim()
Jak widać, nie przyjmuje żadnych parametrów i zwraca wartość typu string. Zwraca kopię oryginalnego ciągu, ale z usuniętymi wszystkimi początkowymi i końcowymi spacjami. Ważna uwaga: spacja to dowolny znak, którego kod ascii jest mniejszy lub równy „U + 0020”. Jeśli nasz String jest pustą sekwencją znaków lub pierwszy i ostatni znak sekwencji znaków reprezentowanej przez ten obiekt String mają kody inne niż białe znaki (jak zdefiniowano powyżej), wówczas zwracana jest referencja do tego obiektu String . Cóż, jeśli wszystkie znaki w naszym ciągu są spacjami, zwracany jest obiekt String reprezentujący pusty ciąg. Jeżeli na początku i na końcu linii nie ma spacji, metoda zwróci samą linię bez zmian.

Przykład metody Java String trim().

Miejmy dwa ciągi znaków ze spacjami i bez spacji na początku i na końcu tekstu. Tekst będzie taki sam dla obu ciągów.
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);
   }
}
Dane wyjściowe to:
Jestem morsem Jestem morsem fałszywy fałsz Jestem morsem Jestem morsem
Czekaj, co?? Wygląda na to, że metoda Java string trim() nie działa! Pierwsze dwa ciągi są inne i takie powinny być (pierwszy nie ma marginesów, drugi ma trzy spacje z przodu i jedną po tekście). Następnie porównaliśmy dwie linie i wydrukowaliśmy wynik. Jest to oczywiście fałszywe, ponieważ te linie są różne. Następnie zastosowaliśmy metodę przycinania do łańcucha ze spacjami na krawędziach i ponownie porównaliśmy ciągi… i z jakiegoś powodu ponownie otrzymaliśmy wartość fałszywą, chociaż teraz powinny być takie same! Potem na wszelki wypadek postanowiliśmy wydrukować same linie, a co jeśli zdarzy się cud? Niestety... Linie były inne i nadal pozostają. Czy domyśliłeś się już w czym tkwi problem? Chodzi o to, że ciągi znaków w Javie są obiektami niezmiennymi. Zatem metoda trim() zwraca nie oryginalny ciąg, ale nowy. Tak czy inaczej powinniśmy tutaj przetestować metodę trim() , więc napiszmy kolejny program. W tym miejscu nazwiemy kopię ciągu utworzonego w wyniku zastosowania metody trim() do pracy. Sprawdźmy także równoważność tych dwóch ciągów.
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));
   }
}
Oto dane wyjściowe:
Jestem Morsem, jestem Morsem, prawda
Bingo! Teraz działa tak, jak oczekiwaliśmy. Pamiętaj o niezmienności Stringów , jest to bardzo ważne dla każdego programisty Java.
Komentarze
  • Popularne
  • Najnowsze
  • Najstarsze
Musisz się zalogować, aby dodać komentarz
Ta strona nie ma jeszcze żadnych komentarzy