CodeGym /Java 博客 /随机的 /Java 字符串indexOf()
John Squirrels
第 41 级
San Francisco

Java 字符串indexOf()

已在 随机的 群组中发布

什么是Java字符串indexOf()?

作为一名 Java 开发人员,您一定遇到过需要查找字符串中字符或子字符串的位置的情况。Java在String类中提供了一个名为indexOf()的内置方法来帮助我们完成此任务。Java中的indexOf ()方法是String类的一部分,即Java StringindexOf(),用于操作字符串。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