Open In App

StringBuffer substring() method in Java with Examples

Improve
Improve
Like Article
Like
Save
Share
Report

In StringBuffer class, there are two types of substring method depending upon the parameters passed to it.

substring(int start)

The substring(int start) method of StringBuffer class is the inbuilt method used to return a substring start from index start and extends to end of this sequence. The string returned by this method contains all character from index start to end of the old sequence.

Syntax:

public String substring(int start)

Parameters: This method accepts only one parameter start which is Integer type value refers to the start index of substring.

Return Value: This method returns the substring lie in the range start to end of old sequence.

Exception: This method throws StringIndexOutOfBoundsException if start is less than zero, or greater than the length of this object.

Below programs illustrate the StringBuffer substring() method:

Example 1:




// Java program to demonstrate
// the substring() 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 substring start from index 5
        // using substring() and print results
        System.out.println("SubSequence = "
                           + str.substring(5));
    }
}


Output:

String contains = GeeksForGeeks
SubSequence = ForGeeks

Example 2: To demonstrate StringIndexOutOfBoundsException




// Java program to demonstrate
// Exception thrown by the substring() Method.
  
class GFG {
    public static void main(String[] args)
    {
  
        // create a StringBuffer object
        // with a String pass as parameter
        StringBuffer str
            = new StringBuffer("Indian Team Played Well");
  
        try {
            // get substring starts from index -7
            // using substring() and print
            str.substring(-7);
        }
  
        catch (Exception e) {
            System.out.println("Exception: " + e);
        }
    }
}


Output:

Exception: java.lang.StringIndexOutOfBoundsException: String index out of range: -7

substring(int start, int end)

The substring(int start, int end) method of StringBuffer class is the inbuilt method used to return a substring start from index start and extends to the index end-1 of this sequence. The string returned by this method contains all character from index start to index end-1 of the old sequence.

Syntax:

public String substring(int start)

Parameters: This method accepts two parameter start which is Integer type value refers to the start index of substring and end which is also a Integer type value refers to the end index of substring.

Return Value: This method returns the substring lie in the range index start to index end-1 of old sequence.

Exception: This method throws StringIndexOutOfBoundsException if start or end are negative or greater than length(), or start is greater than end.

Below programs illustrate the StringBuffer.substring() method:

Example 1:




// Java program to demonstrate
// the substring() 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 substring start from index 5 to index 8
        // using substring() and print results
        System.out.println("SubSequence = "
                           + str.substring(5, 8));
    }
}


Output:

String contains = GeeksForGeeks
SubSequence = For

Example 2: To demonstrate StringIndexOutOfBoundsException




// Java program to demonstrate
// Exception thrown by the substring() Method.
  
class GFG {
    public static void main(String[] args)
    {
  
        // create a StringBuffer object
        // with a String pass as parameter
        StringBuffer str
            = new StringBuffer("Indian Team Played Well");
  
        try {
            // get substring starts from index 7
            // and end at index 3
            // using substring() and print
            str.substring(9, 3);
        }
  
        catch (Exception e) {
  
            System.out.println("Exception: " + e);
        }
    }
}


Output:

Exception: java.lang.StringIndexOutOfBoundsException: String index out of range: -6

References:



Last Updated : 30 Jul, 2019
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads