In StringBuffer class, there are two types of indexOf() method depending upon the parameters passed to it.
indexOf(String str)
The indexOf(String str) method of StringBuffer class is used to return the index of the String for first occurrence of passed substring as parameter from the sequence contained by this object. If substring str is not present then -1 is returned in place of index.
Syntax:
public int indexOf(String str)
Parameters: This method accepts str which is substring type value refers to the String whose index we want to get.
Return Value: This method returns the index of the first occurrence of the passed substring, or -1 if there is no such substring present.
Below programs illustrate the StringBuffer.indexOf() method:
Example 1: when passed substring is present in the sequence.
Java
// Java program to demonstrate // the indexOf() 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: " + str); // get index of string For int index = str.indexOf("For"); // print results System.out.println("index of 'For' : " + index); } } |
String: GeeksForGeeks index of 'For': 5
Example 2: when passed substring is not present in the sequence.
Java
// Java program to demonstrate // the indexOf() 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: " + str); // get index of string article int index = str.indexOf("article"); // print results System.out.println("index of 'article' : " + index); } } |
String: Geeks for Geeks contribute index of 'article': -1
indexOf(String str, int fromIndex):
The indexOf(String str, int fromIndex) method of StringBuffer class is used to return the index within the String for first occurrence of passed substring starting from the specified index ‘fromIndex’. If substring str is not present then -1 is returned. fromIndex is Integer type value refers to the index of the start of the search. If string present before the index of the start of search but not after then -1 will return. Syntax:
public int indexOf(String str, int fromIndex)
Parameters: This method accepts two one parameters str which is String type value refers to the String whose index we want to get and fromIndex which is Integer type value refers to the index from which to start the search.
Returns: This method returns the index of the first occurrence of the passed substring starting at the specified index, or -1 if there is no such substring present.
Below programs illustrate the StringBuffer.indexOf() method:
Example 1: when passed substring is present in the sequence.
Java
// Java program to demonstrate // the indexOf() 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: " + str); // get index of string For from index 3 int index = str.indexOf("For", 3 ); // print results System.out.println("index of 'For' : " + index); } } |
String: GeeksForGeeks index of 'For': 5
Example 2: when passed substring is present in the sequence but index of search is greater than index of substring.
Java
// Java program to demonstrate // the indexOf() 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: " + str); // get index of string Geeks from index 15 int index = str.indexOf("Geeks", 15 ); // print results System.out.println("index of 'Geeks ' : " + index); } } |
String: Geeks for Geeks contribute index of 'Geeks ': -1
References: https://docs.oracle.com/javase/10/docs/api/java/lang/StringBuffer.html#indexOf(java.lang.String, int) https://docs.oracle.com/javase/10/docs/api/java/lang/StringBuffer.html#indexOf(java.lang.String)