CodeGym /Blog Java /Random-PL /Indeks ciągu znaków Java()
John Squirrels
Poziom 41
San Francisco

Indeks ciągu znaków Java()

Opublikowano w grupie Random-PL

Co to jest ciąg znaków Java IndexOf()?

Jako programista Java na pewno spotkałeś się z koniecznością znalezienia pozycji znaku lub podciągu w ciągu znaków. Java udostępnia wbudowaną metodę o nazwie IndexOf() w klasie String , która pomaga nam w tym zadaniu. Metoda IndexOf() w Javie jest częścią klasy String , czyli klasy Java String IndexOf() , która służy do manipulacji ciągami znaków. Metoda IndexOf() w Javie zwraca pozycję pierwszego wystąpienia znaku lub podłańcucha w danym ciągu. Jeżeli znak lub podciąg nie zostanie znaleziony, metoda zwraca -1.
// Here is the syntax of the String indexOf():
public int indexOf(int ch)
public int indexOf(int ch, int fromIndex)
public int indexOf(String str)
public int indexOf(String str, int fromIndex)
Przyjrzyjmy się różnym sposobom użycia metody „indexOf()”.

Znajdowanie pozycji znaku w ciągu:

Załóżmy, że mamy ciąg znaków „Witaj, świecie!” . Aby znaleźć pozycję znaku „o” w ciągu, możemy użyć następującego kodu:
public class StringIndexOfExample {
    public static void main(String[] args) {
        String str = "Hello, world!";
// We will use Str.indexOf here
        int position = str.indexOf('o');
        System.out.println("Position of 'o' in the string is: " + position);
    }
}

Wyjście

Pozycja „o” w ciągu znaków to: 4
W powyższym kodzie najpierw zadeklarowaliśmy ciąg znaków „Witaj, świecie!” a następnie użył metody IndexOf() do znalezienia pozycji znaku „o” w ciągu znaków. Metoda zwróciła pozycję 4, która jest pierwszym wystąpieniem znaku „o” w ciągu.

Znajdowanie pozycji znaków w ciągu

Oto przykładowy fragment kodu demonstrujący sposób użycia metody IndexOf() do znalezienia pozycji znaków w ciągu znaków:
public class StringIndexOfExample {
    public static void main(String[] args) {
        String str = "Hello, world!";
        // We will use Str.indexOf here
        int position = str.indexOf('o');

        while (position >= 0) {
            System.out.println("'o' found at position " + position);
            position = str.indexOf('o', position + 1);
        }
    }
}

Wyjście

„o” znalezione na pozycji 4 „o” znalezione na pozycji 8
W powyższym kodzie najpierw zadeklarowaliśmy ciąg znaków „Witaj, świecie!” a następnie użył metody IndexOf() do znalezienia pozycji znaku „o” w ciągu znaków. Metoda IndexOf() zwraca pozycję pierwszego wystąpienia znaku w ciągu znaków lub -1, jeśli znak nie został znaleziony. Następnie użyliśmy pętli while, aby kontynuować wyszukiwanie znaku „o” w ciągu, wywołując funkcję IndexOf() ze znakiem i następną pozycją początkową jako argumentami. Powtarzamy ten proces, aż funkcja IndexOf() zwróci -1, co oznacza, że ​​w ciągu znaków nie ma już więcej wystąpień tego znaku. W tym przykładzie odkryliśmy, że znak „o” pojawia się na pozycjach 4 i 8 w ciągu „Witaj, świecie!”.

Znajdowanie pozycji podciągu w ciągu

Załóżmy, że mamy ciąg „Java jest popularnym językiem programowania” . Aby znaleźć pozycję podciągu „programowanie” w ciągu, możemy użyć następującego kodu:
public class StringIndexOfExample {
    public static void main(String[] args) {
        String str = "Java is a popular programming language";
        // We will use Str.indexOf here
        int position = str.indexOf("programming");
        System.out.println("Position of 'programming' in the string is: " + position);
    }
}

Wyjście

Pozycja „programowania” w ciągu znaków to: 18
W powyższym kodzie najpierw zadeklarowaliśmy ciąg „Java jest popularnym językiem programowania” , a następnie użyliśmy metody IndexOf() do znalezienia pozycji podciągu „programowanie” w ciągu. Metoda zwróciła pozycję 18, która jest pozycją początkową „programowania” podłańcucha w ciągu.

Znajdowanie wszystkich wystąpień znaku lub podciągu w ciągu

Załóżmy, że mamy ciąg znaków „Java jest popularnym językiem programowania. Java jest szeroko stosowana w tworzeniu stron internetowych” . Aby znaleźć wszystkie wystąpienia znaku „a” lub podciągu „Java” w ciągu, możemy użyć następującego kodu:
public class StringIndexOfExample {
    public static void main(String[] args) {
        String str = "Java is a popular programming language. Java is widely used in web development.";

        int position = -1;


        while ((position = str.indexOf('a', position + 1)) != -1) {
            System.out.println("Found 'a' at position: " + position);
        }

        while ((position = str.indexOf("Java", position + 1)) != -1) {
            System.out.println("Found 'Java' at position: " + position);
        }
    }
}

Wyjście

Znaleziono „a” na pozycji: 1 Znaleziono „a” na pozycji: 3 Znaleziono „a” na pozycji: 8 Znaleziono „a” na pozycji: 15 Znaleziono „a” na pozycji: 23 Znaleziono „a” na pozycji: 31 Znaleziono „ a' na pozycji: 35 Znaleziono 'a' na pozycji: 41 Znaleziono 'a' na pozycji: 43 Znaleziono 'Java' na pozycji: 0 Znaleziono 'Java' na pozycji: 40
W powyższym kodzie najpierw zadeklarowaliśmy ciąg „Java jest popularnym językiem programowania. Java jest szeroko stosowany w tworzeniu stron internetowych”, a następnie użyliśmy metody indeksOf() w celu znalezienia wszystkich wystąpień znaku „a” lub podciągu „Java” w sznurku. Użyliśmy pętli while do iteracji po wszystkich wystąpieniach znaku lub podłańcucha, aż metoda IndexOf() zwróci -1, co oznacza, że ​​nie ma już więcej wystąpień znaku lub podłańcucha w ciągu.

Wniosek

Podsumowując, metoda IndexOf() w Javie jest potężnym narzędziem do znajdowania pozycji znaku lub podciągu w ciągu. Stosując różne warianty tej metody, możemy łatwo znaleźć pozycję znaku lub podciągu w ciągu znaków, zaczynając od podanego indeksu lub znajdując wszystkie wystąpienia znaku lub podciągu. Jest to niezbędna metoda dla każdego programisty Java pracującego z ciągami znaków w swoich aplikacjach.
Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION