Java中的 StringBuffer lastIndexOf() 方法及示例
在 StringBuffer 类中,根据传递给它的参数,有两种类型的 lastIndexOf() 方法。
lastIndexOf(String str)
StringBuffer 类的lastIndexOf(String str)方法是用于返回 String 中最后一次出现作为参数传递的子字符串的索引的内置方法。空字符串“”的最后一次出现被认为出现在索引值 this.length() 处。如果子字符串 str 不存在,则返回 -1。
句法:
public int lastIndexOf(String str)
参数:该方法只接受一个参数str ,它是String类型的值是指我们要获取的最后一次出现的索引的String。
返回值:此方法返回传递的子字符串的最后一次出现的索引,如果不存在这样的子字符串,则返回 -1。
下面的程序说明了Java.lang.StringBuffer.lastIndexOf() 方法:
示例 1:当传递的子字符串存在于序列中时。
// Java program to demonstrate
// the lastIndexOf() Method.
class GFG {
public static void main(String[] args)
{
// create a StringBuffer object
// with a String pass as parameter
StringBuffer str
= new StringBuffer("GeeksForGeeks");
// print string
System.out.println("String contains = " + str);
// get index of string For
int index = str.lastIndexOf("Geeks");
// print results
System.out.println("Index of last occurrence"
+ " string \"Geeks\"= "
+ index);
}
}
String contains = GeeksForGeeks
Index of last occurrence string "Geeks"= 8
示例 2:当传递的子字符串在序列中不存在时。
// Java program to demonstrate
// the lastIndexOf() Method.
class GFG {
public static void main(String[] args)
{
// create a StringBuffer object
// with a String pass as parameter
StringBuffer str
= new StringBuffer(
"Geeks for Geeks contribute");
// print string
System.out.println("String contains = " + str);
// get index of string article
int index = str.lastIndexOf("article");
// print results
System.out.println("Index of string"
+ " 'article' = "
+ index);
}
}
String contains = Geeks for Geeks contribute
Index of string 'article' = -1
lastIndexOf(String str, int fromIndex)
StringBuffer 类的lastIndexOf(String str, int fromIndex)方法是内置方法,用于返回 String 中第一次出现作为参数传递的子字符串的索引,从指定的索引“fromIndex”开始向后搜索。如果子字符串 str 不存在,则返回 -1。 fromIndex是整数类型值是指从其开始搜索的索引,但此搜索是从索引“fromIndex”向后搜索的。该方法返回的索引是从序列的开始计算的,唯一的区别是该方法中给出了搜索开始的索引。如果字符串出现在搜索开始的索引之后但不在之前,则 -1 将返回。
句法:
public int lastIndexOf(String str, int fromIndex)
参数:此方法接受两个 one 参数:
- str是 String 类型的 value 是指要获取其索引的 String
- fromIndex是 Integer 类型的值,是指从其开始向后搜索的索引。
返回:此方法返回从指定索引开始的最后一次出现的传递子字符串的索引,如果不存在这样的子字符串,则返回 -1。
下面的程序说明了 StringBuffer.lastIndexOf() 方法:
示例 1:当传递的子字符串存在于序列中时。
// Java program to demonstrate
// the lastIndexOf() Method.
class GFG {
public static void main(String[] args)
{
// create a StringBuffer object
// with a String pass as parameter
StringBuffer str
= new StringBuffer("GeeksForGeeks");
// print string
System.out.println("String contains = " + str);
// get index of string Form index 3
int index = str.lastIndexOf("For", 8);
// print results
System.out.println("index of last occurrence"
+ " string \"For\" = "
+ index);
}
}
String contains = GeeksForGeeks
index of last occurrence string "For" = 5
示例 2:当 fromIndex 为 < 子字符串的最后出现索引时
// Java program to demonstrate
// the lastIndexOf() Method.
class GFG {
public static void main(String[] args)
{
// create a StringBuffer object
// with a String pass as parameter
StringBuffer str
= new StringBuffer("Geeks for Geeks contribute");
// print string
System.out.println("String contains = " + str);
// get index of string Geeks from index 15
int index = str.lastIndexOf("contribute", 10);
// print results
System.out.println("index of string"
+ " 'contribute ' = "
+ index);
}
}
String contains = Geeks for Geeks contribute
index of string 'contribute ' = -1
参考资料:
- https://docs.oracle.com/javase/10/docs/api/java Java Java, int)
- https://docs.oracle.com/javase/10/docs/api/java Java Java)