Java String 类中的 lastIndexOf() 方法返回指定字符最后一次出现在指定字符串中的索引位置。如果未找到该字符则返回 -1。
语法1
lastIndexOf(int ch)
参数说明:
ch:一个字符(Unicode代码点)。
示例
使用 lastIndexOf() 函数在字符串 strCom 中搜索字符 a 最后一次出现的索引位置,并将返回结果赋值给 int 型变量 index。
String strCom = "abcdefg gfdecba";
int index = strCom.lastIndexOf("a");
语法2
返回在此字符串中最后一次出现指定字符处的索引,从指定的索引开始反向搜索。如果找到返回值,返回出现处的下标;否则返回 -1。
lastIndexOf(int ch,int fromIndex)
参数说明:
ch:一个字符(Unicode代码点)。
fromIndex:开始搜索的索引位置。fromIndex 的值没有限制。如果它大于等于此字符串的长度,则与它小于此字符串长度减 1 的效果相同:将搜索整个字符串。如果它为负,则与它为 -1 的效果相同:返回 -1。
示例
使用 lastIndexOf() 函数在字符串 strCom 中搜索字符 a,从索引位置 5 处开始反向搜索,并将返回结果赋值给 int 型变量 index。由于反向搜索字符 a 的索引位置是 0。因此 index 的值为 0。
String strCom = "abcdefg gfdecba";
int index = strCom.lastIndexOf("a",5);
语法3
返回在此字符串中最后一次出现指定子字符串处的索引。将最后的空字符串""视为出现在索引值 this.length() 处。返回的索引是 this.startsWith(str,k) 为 true 的最大 k 值。如果不存在该子字符串,则返回 -1。
lastIndexOf(String str)
参数说明:
str:指定要搜索的子字符串。
示例
使用 lastIndexOf() 函数搜索字符串“C语言”在字符串 strCom 中最后出现的位置,并将返回结果赋值给 int 型变量 index。
String strCom="C语言中文网,C语言编程词典,C语言软件";
int index=strCom.lastIndexOf("C语言");
语法4
返回在此字符串中最后一次出现指定子字符串处的索引,从指定的索引处开始反向搜索。如果找到返回值,返回出现处的下标;否则返回 -1。
public int lastIndexOf(String str,int fromIndex)
参数说明:
str:指定要搜索的子字符串。
fromIndex:开始反向搜索的索引位置。
示例
使用 lastIndexOf() 函数搜索字符串“编程词典”在字符串 strCom 中最后出现的位置,指定开始搜索的索引位置是 5,并将返回结果赋值给 int 型变量 index。由于执行的是反向搜索,所以从索引位置 5 开始进行反向搜索,返回结果将为 -1。
String strCom="C语言中文网,C语言编程词典,C语言软件";
int index=strCom.lastIndexOf("编程词典",5);