在本教程中,我们将借助示例了解 Java 字符串 indexOf()。
indexOf()
方法返回字符串中指定字符/子字符串第一次出现的索引。
示例
class Main {
public static void main(String[] args) {
String str1 = "Java is fun";
int result;
// getting index of character 's'
result = str1.indexOf('s');
System.out.println(result);
}
}
// Output: 6
用法:
String indexOf()
方法的语法
string.indexOf(int ch, int fromIndex)
或者
string.indexOf(String str, int fromIndex)
这里,string
是String
类的对象。
参数:
要查找字符的索引,indexOf()
采用以下两个参数:
- ch- 要找到起始索引的字符
- fromIndex(可选) - 如果
fromIndex
通过,则ch
从此索引开始搜索字符
要在字符串中查找指定子字符串的索引,indexOf()
采用以下两个参数:
- str- 要找到其起始索引的字符串
- fromIndex(可选) - 如果
fromIndex
通过,则str
从此索引开始搜索字符串
返回:
- 返回索引指定字符/字符串的第一次出现
- 返回 -1如果未找到指定的字符/字符串。
示例 1:Java 字符串 indexOf()
// Java String indexOf() with only one parameter
class Main {
public static void main(String[] args) {
String str1 = "Learn Java";
int result;
// getting index of character 'J'
result = str1.indexOf('J');
System.out.println(result); // 6
// the first occurrence of 'a' is returned
result = str1.indexOf('a');
System.out.println(result); // 2
// character not in the string
result = str1.indexOf('j');
System.out.println(result); // -1
// getting the index of "ava"
result = str1.indexOf("ava");
System.out.println(result); // 7
// substring not in the string
result = str1.indexOf("java");
System.out.println(result); // -1
// index of empty string in the string
result = str1.indexOf("");
System.out.println(result); // 0
}
}
注意:
- 字符
'a'
在"Learn Java"
字符串中出现多次。indexOf()
方法返回'a'
的第一次出现的索引(即 2)。 - 如果传递的是空字符串,则
indexOf()
返回0(在第一个位置找到。这是因为空字符串是每个子字符串的子集。
示例 2:indexOf() 使用 fromIndex 参数
class Main {
public static void main(String[] args) {
String str1 = "Learn Java programming";
int result;
// getting the index of character 'a'
// search starts at index 4
result = str1.indexOf('a', 4);
System.out.println(result); // 7
// getting the index of "Java"
// search starts at index 8
result = str1.indexOf("Java", 8);
System.out.println(result); // -1
}
}
注意:
"Learn Java programming"
字符串中第一次出现的'a'
位于索引 2。但是,使用str1.indexOf('a', 4)
时会返回第二个'a'
的索引。这是因为搜索从索引 4 开始。"Java"
字符串在"Learn Java programming"
字符串中。但是,str1.indexOf("Java", 8)
返回 -1(未找到字符串)。这是因为搜索从索引 8 开始,并且"va programming"
中没有"Java"
。
相关用法
- Java String indexOf()用法及代码示例
- Java String indent()用法及代码示例
- Java String intern()用法及代码示例
- Java String isEmpty()用法及代码示例
- Java String valueOf()用法及代码示例
- Java String split()用法及代码示例
- Java String strip()用法及代码示例
- Java String getChars()用法及代码示例
- Java String substring()用法及代码示例
- Java String replace()用法及代码示例
- Java String contains()用法及代码示例
- Java String regionMatches()用法及代码示例
- Java String copyValueOf()用法及代码示例
- Java String toString()用法及代码示例
- Java String endsWith()用法及代码示例
- Java String lines()用法及代码示例
- Java String repeat()用法及代码示例
- Java String hashCode()用法及代码示例
- Java String lastIndexOf()用法及代码示例
- Java String equals()用法及代码示例
注:本文由纯净天空筛选整理自 Java String indexOf()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。