GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Java Tutorial
  • Advanced Java
  • Interview Questions
  • Exercises
  • Examples
  • Quizzes
  • Projects
  • Cheatsheet
  • DSA in Java
  • Java Collection
  • Introduction3 min read
  • Variables2 min read
  • Data Types7 min read
  • Operators7 min read

This view

  • Original page
  • New address

GeezerVison is showing www.geeksforgeeks.org — StringBuilder substring() method in Java with examples - GeeksforGeeks

geeksforgeeks
search icon
  • Courses
  • Tutorials
  • Interview Prep
  • Java Tutorial
  • Advanced Java
  • Interview Questions
  • Exercises
  • Examples
  • Quizzes
  • Projects
  • Cheatsheet
  • DSA in Java
  • Java Collection

StringBuilder substring() method in Java with examples

Last Updated : 19 Dec, 2025

The substring() method of the StringBuilder class is used to extract a portion of characters from an existing character sequence and return it as a new String. It always returns a new String object and does not modify the original StringBuilder. Indexing is zero-based, and passing invalid index values results in runtime exceptions.

Example.

Java
class GFG {
    public static void main(String[] args)
    {
        StringBuilder str= new StringBuilder("GeeksForGeeks");  // string
        System.out.println("Substring = "+ str.substring(5));
    }
}

Output
Substring = ForGeeks

Explanation: Index 5 points to the character 'F'. All characters from index 5 to the end are returned as a new String.

Syntax

public String substring(int start, int end)

Parameter:

  • start: starting index (inclusive)
  • end (optional): ending index (exclusive)

Return Type: String

Example 1. Extracting a Substring Starting from a Specific Index

Java
class GFG {
    public static void main(String[] args) {
        StringBuilder str = new StringBuilder("GeeksForGeeks");
        System.out.println("Substring = " + str.substring(5));
    }
}

Output
Substring = ForGeeks

Explanation:

  • In the code, substring(5) is called on the StringBuilder object str, where index 5 corresponds to the character 'F'.
  • All characters from index 5 up to the end of the sequence are extracted and returned as a new String, while the original StringBuilder remains unchanged.

Example 2. Extracting a Substring Using Start and End Index

Java
class GFG{
    public static void main(String[] args){
        StringBuilder sb = new StringBuilder("GeeksForGeeks");
        System.out.println(sb.substring(5, 8));
    }
}

Output
For

Explanation:

  • In the statement sb.substring(5, 8), index 5 is the starting position (inclusive), pointing to the character 'F'.
  • Index 8 is the ending position (exclusive), so characters at indices 5, 6, and 7 are included in the result.
  • The extracted substring "For" is returned as a new String, and the original StringBuilder sb remains unchanged.

Handling Invalid Index Values

Passing a negative index or an index greater than the length of the StringBuilder causes a StringIndexOutOfBoundsException at runtime.

Java
class GFG{
    
    public static void main(String[] args){
        StringBuilder sb = new StringBuilder("JavaDeveloper");
        try {
            sb.substring(-3);
        } 
        catch (Exception e) {
            System.out.println(e);
        }
    }
}

Output
java.lang.StringIndexOutOfBoundsException: Range [-3, 13) out of bounds for length 13

Explanation: Negative start index is invalid. The method throws "StringIndexOutOfBoundsException" at runtime.

Comment

Explore

    Basics
    • Introduction3 min read
    • Variables2 min read
    • Data Types7 min read
    • Operators7 min read
    • Decision Making5 min read
    • Methods7 min read
    • Arrays7 min read
    • Strings5 min read
    OOP & Interface
    • Introduction6 min read
    • Constructors6 min read
    • Encapsulation3 min read
    • Inheritance8 min read
    • Polymorphism5 min read
    • Abstraction5 min read
    • Interfaces8 min read
    Collections
    • Collection class9 min read
    • Collection Interface5 min read
    • List Interface8 min read
    • Set Interface5 min read
    • Queue Interface5 min read
    • Map Interface in Java6 min read
    • Iterator4 min read
    Advance Java Concepts
    • Exception handling6 min read
    • Java Multithreading Tutorial3 min read
    • Synchronization in Java9 min read
    • File handling6 min read
    • Method References3 min read
    • Java 8 Stream Tutorial7 min read
    • Memory Management4 min read
    • Garbage Collection in Java6 min read
    • Networking6 min read
    • JDBC5 min read
    Practice Java
    • Interview Questions15+ min read
    • Programs6 min read
    • Practice Problems5 min read
    • Quiz1 min read
    • Project Ideas15+ min read
    Courses
    • Java Backend Course2 min read
    • Placement 360 Course2 min read
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.