📜  Java中的 StringBuilder indexOf() 方法及示例

📅  最后修改于: 2022-05-13 01:55:04.470000             🧑  作者: Mango

Java中的 StringBuilder indexOf() 方法及示例

在 StringBuilder 类中,根据传递给它的参数,有两种类型的 indexOf() 方法。

indexOf(字符串字符串)

StringBuilder 类indexOf(String str)方法是用于返回字符串内第一次出现作为参数传递的子字符串的索引的内置方法。如果子字符串 str 不存在,则返回 -1。

句法:

public int indexOf(String str)

参数:该方法只接受一个参数str ,它是String类型的值,指向需要索引的String。

返回值:此方法返回传递的子字符串第一次出现的索引,如果不存在这样的子字符串,则返回 -1。

下面的程序说明了 StringBuilder.indexOf() 方法:

示例 1:当传递的子字符串存在于序列中时。

// Java program to demonstrate
// the indexOf() Method.
  
class GFG {
    public static void main(String[] args)
    {
  
        // create a StringBuilder object
        // with a String pass as parameter
        StringBuilder str
            = new StringBuilder("GeeksForGeeks");
  
        // print string
        System.out.println("String contains = " + str);
  
        // get index of string For
        int index = str.indexOf("For");
  
        // print results
        System.out.println("index of string 'For' = "
                           + index);
    }
}
输出:
String contains = GeeksForGeeks
index of string 'For' = 5

示例 2:当传递的子字符串在序列中不存在时。

// Java program to demonstrate
// the indexOf() Method.
  
class GFG {
    public static void main(String[] args)
    {
  
        // create a StringBuilder object
        // with a String pass as parameter
        StringBuilder str
            = new StringBuilder(
                "Geeks for Geeks contribute");
  
        // print string
        System.out.println("String contains = "
                           + str);
  
        // get index of string article
        int index = str.indexOf("article");
  
        // print results
        System.out.println("Index of string"
                           + " 'article' = "
                           + index);
    }
}
输出:
String contains = Geeks for Geeks contribute
Index of string 'article' = -1

indexOf(String str, int fromIndex)

StringBuilder 类indexOf(String str, int fromIndex)方法是内置方法,用于返回 String 中的索引,用于第一次出现传递的子字符串作为参数,从指定的索引“fromIndex”开始。如果子字符串 str 不存在,则返回 -1。 fromIndex是 Integer 类型的值,指的是从哪个索引开始搜索。此方法返回的索引是从序列的开头计算的,唯一的区别是此方法中给出了搜索开始的索引。如果字符串存在于搜索开始的索引之前但不在搜索开始的索引之前,则 -1 将返回。

句法:

public int indexOf(String str, int fromIndex)

参数:此方法接受两个参数:

  • str:即String类型值,指的是需要索引的String。
  • fromIndex:这是Integer类型的值,指的是从哪个索引开始搜索。

返回值:此方法返回从指定索引开始的传递子字符串的第一次出现的索引,如果不存在这样的子字符串,则返回 -1。

下面的程序说明了 StringBuilder.indexOf() 方法:

示例 1:当传递的子字符串存在于序列中时。

// Java program to demonstrate
// the indexOf() Method.
  
class GFG {
    public static void main(String[] args)
    {
  
        // create a StringBuilder object
        // with a String pass as parameter
        StringBuilder str
            = new StringBuilder("GeeksForGeeks");
  
        // print string
        System.out.println("String contains = " + str);
  
        // get index of string Form index 3
        int index = str.indexOf("For", 3);
  
        // print results
        System.out.println("index of string"
                           + " \"For\" = "
                           + index);
    }
}
输出:
String contains = GeeksForGeeks
index of string "For" = 5

示例 2:当传递的子字符串存在于序列中但搜索的索引大于子字符串的索引时。

// Java program to demonstrate
// the indexOf() Method.
  
class GFG {
    public static void main(String[] args)
    {
  
        // create a StringBuilder object
        // with a String pass as parameter
        StringBuilder str
            = new StringBuilder("Geeks for Geeks contribute");
  
        // print string
        System.out.println("String contains = " + str);
  
        // get index of string Geeks from index 15
        int index = str.indexOf("Geeks", 15);
  
        // print results
        System.out.println("index of string 'Geeks ' = "
                           + index);
    }
}
输出:
String contains = Geeks for Geeks contribute
index of string 'Geeks ' = -1

参考:

  • https://docs.oracle.com/javase/10/docs/api/java Java Java, int)
  • https://docs.oracle.com/javase/10/docs/api/java Java Java)