Klasy String – metody z przykładami | split, length, replace, contains, indexOf, substring

Klasy String - metody

Metody klasy String to fragment artykułu na temat klasy String. W tym tekście zostaną omówione najważniejsze metody klasy String wraz z przykładami użycia.

String trim

public String trim()

Zadaniem metody trim jest pozbycie się wszystkich białych znaków na początku i końcu stringa.

String toUpperCase

public String toUpperCase(Locale locale)
public String toUpperCase()

Metoda toUpperCase zamienia wszystkie znaki w stringu na wielkie litery. Jako opcjonalny argument przyjmuje ustawienia regionalne. W przypadku jego braku metoda przyjmie domyślną wartość: Locale.getDefault().

String toLowerCase

public String toLowerCase(Locale locale)
public String toLowerCase()

Metoda toLowerCase zamienia wszystkie znaki w stringu na małe litery. Jako opcjonalny argument przyjmuje ustawienia regionalne. W przypadku jego braku metoda przyjmie domyślną wartość: Locale.getDefault().

String isEmpty

public boolean isEmpty()

Metoda isEmpty zwraca prawdę, jeżeli string jest pusty, czyli jeżeli jego długość równa się 0.

String length

public int length()

Metoda length zwraca długość ciągu znaków.

String charAt

public char charAt(int index)

Metoda charAt zwraca znak znajdujący się pod wskazanym indeksem. W przypadku przekroczenia zakresu indeksu wyrzuci wyjątek: StringIndexOutOfBoundsException.

String toCharArray

public char[] toCharArray()

Metoda toCharArray zwraca tablicę wszystkich znaków składającą się na ciąg znaków.

String substring

public String substring(int beginIndex, int endIndex)
public String substring(int beginIndex)

Metoda substring zwraca wybrany fragment ciągu znaków o podanym zakresie indeksów.

String subSequence

public CharSequence subSequence(int beginIndex, int endIndex)

Metoda subSequence działa analogicznie do substring, jedyną różnicą jest to, że zwraca bardziej ogólny interfejs: CharSequence.

String split

public String[] split(String regex, int limit)
public String[] split(String regex)

Metoda split na podstawie wyrażenia regularnego rozbija ciąg znaków na fragmenty. Opcjonalny argument: limit ogranicza długość wynikowej tablicy. Po jego przekroczeniu reszta nierozbitego na fragmenty tekstu zostanie zwrócona jako ostatni jej element.

Poniżej przykłady wraz z opisem.

  1. Split dzieli ciąg znaków na fragmenty oddzielone spacją.
  2. Jeżeli po podziale tekstu na fragmenty zostaną na końcu puste stringi, nie zostaną one uwzględnione w wynikowej tablicy.
  3. Metoda split obsługuje również wyrażenia regularne.
  4. Jeżeli metoda split jako argument przyjmie pusty string, w wynikowej tablicy będzie ciąg znaków podzielony na pojedyncze znaki (stringi o długości 1). Dodatkowo w przykładzie wykorzystano argument limit, po którego przekroczeniu ciąg znaków przestaje być rozbijany na kolejne fragmenty.

String replace

public String replace(CharSequence target, CharSequence replacement)
public String replace(char oldChar, char newChar)

public String replaceAll(String regex, String replacement)

public String replaceFirst(String regex, String replacement)

Metoda replace służy do zamiany jednego fragmentu tekstu na drugi. Istnieje kilka różnych możliwości podmiany tekstu jak zamiana tylko pierwszego wystąpienia, wszystkich wystąpień lub wykorzystanie wyrażeń regularnych.

Poniżej przykłady wraz z opisem.

  1. Najprostsze wywołanie demonstrujące zamianę wszystkich wystąpień litery: ‘a’ na ‘A’.
  2. Podmiana pasujących stringów robiona jest od lewej do prawej strony. Dlatego, jeżeli jeden fragment tekstu zostanie już podmieniony, to nie będzie wykorzystany po raz kolejny.
  3. Zamiana tylko pierwszego pasującego wystąpienia
  4. Zamiana wszystkich pasujących wystąpień.
  5. Metoda replaceAll może przyjmować również wyrażenia regularne.

String matches

public boolean matches(String regex)

Metoda matches na podstawie wyrażenia regularnego stwierdza czy string pasuje do wzorca.

String indexOf

public int indexOf(String str, int fromIndex)
public int indexOf(int ch)
public int indexOf(String str)

public int lastIndexOf(int ch, int fromIndex)
public int lastIndexOf(int ch)

Metoda indexOf wyszukuje podanego ciągu znaków i zwraca indeks pierwszego znalezionego wystąpienia. Opcjonalnie można podać indeks, od którego ma rozpocząć się przeszukiwanie lub skorzystać z metody: lastIndexOf w celu znalezienia ostatniego wystąpienia.

String equals

public boolean equals(Object anObject)
public boolean equalsIgnoreCase(String anotherString)

Metoda equals wykorzystywana jest do porównywania ze sobą stringów po wartości. Ponieważ stringi są obiektami operator == nawet dla takich samych ciągów znaków może zwrócić false. Istnieje również metoda equalsIgnoreCase wykorzystywana do porównywania stringów, która ignoruje wielkość znaków.

String concat

public String concat(String str)

Dzięki metodzie concat można łączyć ze sobą stringi. Podobny efekt można osiągnąć przez operator +. Więcej na temat samej konkatenacji stringów oraz kłopotów z wydajnością można przeczytać w artykule o StringBuilder.

String startsWith

public boolean startsWith(String prefix, int toffset)
public boolean startsWith(String prefix)

Metoda startWith sprawdza, czy string zaczyna się od wskazanego ciągu znaków. Opcjonalnie można podać indeks, od którego ma rozpocząć przeszukiwanie.

String endsWith

public boolean endsWith(String suffix)

Metoda endsWith sprawdza, czy string kończy się od wskazanego ciągu znaków.

String contains

public boolean contains(CharSequence s)

Metoda contains sprawdza, czy string zawiera dany ciąg znaków.

String compareTo

public int compareTo(String anotherString)

Dzięki compareTo można porównać stringi według porządku leksykograficznego. Jeżeli oba stringi są sobie równe według metody equals, to metoda compareTo zwróci 0, jeżeli pierwszy ciąg znaków jest większy, to wynik będzie mniejszy od 0, w przeciwnym wypadku wynik będzie większy od 0. Istnieje również metoda compareToIgnoreCase, która dodatkowo przy porównywaniu ignoruje wielkość znaków.

String getBytes

public byte[] getBytes()

Metoda getBytes zamienia stringa na tablicę bajtów.

 

Programista – Pytania rekrutacyjne

Lista pytań rekrutacyjnych, które pozwolą przygotować Ci się na rozmowę kwalifikacyjną.

No comments
Share:

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *