什么是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,这表示字符串中不再出现该字符或子字符串。
GO TO FULL VERSION