CodeGym /Java Blog /Toto sisi /Java 字串indexOf()
John Squirrels
等級 41
San Francisco

Java 字串indexOf()

在 Toto sisi 群組發布

什麼是Java字串indexOf()?

身為 Java 開發人員,您一定遇到過需要尋找字串中字元或子字串的位置的情況。Java在String類別中提供了一個名為indexOf()的內建方法來幫助我們完成此任務。Java中的indexOf ()方法是String類別的一部分,即Java String類別indexOf(),用於操作字串。Java 中的indexOf ()方法傳回給定字串中字元或子字串第一次出現的位置。如果未找到該字元或子字串,則方法將傳回 -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)
讓我們深入研究一下使用「indexOf()」方法的不同方式。

尋找字串中某個字元的位置:

假設我們有一個字串“Hello, world!” 。要查找字元“o”在字串中的位置,我們可以使用以下程式碼:
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);
    }
}

輸出

'o' 在字串中的位置是:4
在上面的程式碼中,我們首先聲明了一個字串“Hello, world!” 然後使用indexOf()方法尋找字元“o”在字串中的位置。此方法傳回位置 4,這是字元「o」在字串中第一次出現。

查找字串中字元的位置

下面是一個範例程式碼片段,示範如何使用indexOf()方法來尋找字串中字元的位置:
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);
        }
    }
}

輸出

在位置 4 找到“o” 在位置 8 找到“o”
在上面的程式碼中,我們首先聲明了一個字串“Hello, world!” 然後使用indexOf()方法尋找字元“o”在字串中的位置。indexOf ()方法傳回該字元在字串中第一次出現的位置,如果找不到該字元則傳回 -1。 然後,我們使用 while 迴圈透過以字元和下一個起始位置作為參數呼叫indexOf()來繼續在字串中搜尋字元「o」 。我們重複這個過程,直到indexOf()回傳-1,表示該字元在字串中不再出現。在此範例中,我們發現字元「o」出現在字串「Hello, world!」中的 位置 4 和 8 處。

尋找子字串在字串中的位置

假設我們有一個字串「Java是一種流行的程式語言」要查找子字串“programming”在字串中的位置,我們可以使用以下程式碼:
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);
    }
}

輸出

「programming」在字串中的位置是:18
在上面的程式碼中,我們首先宣告了一個字串「Java是一種流行的程式語言」,然後使用indexOf()方法來尋找子字串「programming」在字串中的位置。此方法傳回位置 18,這是字串中子 字串「programming」的起始位置。

尋找字串中所有出現的字元或子字串

假設我們有一個字串“Java是一種流行的程式語言。Java廣泛用於Web開發”。要查找字串中 出現的所有字元“a”或子字串“Java” ,我們可以使用以下程式碼:
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);
        }
    }
}

輸出

在位置 1 找到「a」 在位置 3 找到「a」 在位置 8 找到「a」 在位置 15 找到「a」 在位置 23 找到「a」 在位置 31 找到「a」 a' 在位置:35 在位置:41 找到'a' 在位置:43 找到'Java' 在位置:0 在位置找到'Java':40
在上面的程式碼中,我們首先聲明了一個字串“Java是一種流行的程式語言。Java廣泛用於Web開發”,然後使用indexOf()方法查找所有出現的字元“a”或子字串“ Java”在字串中。我們使用 while 迴圈來迭代所有出現的字元或子字串,直到indexOf()方法傳回 -1,這表示字串中不再出現該字元或子字串。

結論

總之, Java 中的indexOf()方法是尋找字串中字元或子字串位置的強大工具。透過使用該方法的不同變體,我們可以輕鬆地找到字元或子字串在字串中的位置,從給定索引開始或尋找字元或子字串的所有出現。對於任何在應用程式中使用字串的 Java 開發人員來說,這是一種基本方法。
留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION