StringBuffer setLength() in Java with Examples

The setLength(int newLength) method of StringBuffer class is the inbuilt method used to set the length of the character sequence equal to newLength. If the newLength passed as argument is less than the old length, the old length is changed to the newLength. If the newLength passed as argument is greater than or equal to the old length, null characters (‘\u0000’) are appended at the end of old sequence so that length becomes the newLength argument.

Syntax:

public void setLength(int newLength)

Parameters:
This method accepts one parameter newLength which is Integer type value refers to the new length of sequence you want to set.
Returns:
This method returns nothing.
Exception:
If the newLength is negative then IndexOutOfBoundsException.



Below programs illustrate the java.lang.StringBuffer.setLength() method:
Example 1:

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to demonstrate
// the setLength() Method.
  
class GFG {
  
    public static void main(String[] args)
    {
        // create a StringBuffer object
        // with a String pass as parameter
        StringBuffer str
            = new StringBuffer("WelcomeGeeks");
  
        // print string
        System.out.println("String length = "
                           + str.length() + 
                  " and contains = " + str);
  
        // set length equal to 10
        str.setLength(10);
  
        // print string
        System.out.println("After setLength() String = "
                           + str.toString());
    }
}

chevron_right


Output:

String length = 12 and contains = WelcomeGeeks
After setLength() String = WelcomeGee

Example 2:

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to demonstrate
// the setLength() Method.
  
class GFG {
    public static void main(String[] args)
    {
  
        // create a StringBuffer object
        // with a String pass as parameter
        StringBuffer str
            = new StringBuffer("Tony Stark will die");
  
        // print string
        System.out.println("String length = "
                           + str.length() + 
        " and contains = \"" + str + "\"");
  
        // set length equal to 25
        str.setLength(25);
  
        // print string
        System.out.println("After setLength() String = \""
                           + str.toString() + "\"");
    }
}

chevron_right


Output:

String length = 19 and contains = "Tony Stark will die"
After setLength() String = "Tony Stark will die      "

Example 3: When negative new length is passed:

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to demonstrate
// Exception thrown by the setLength() Method.
  
class GFG {
    public static void main(String[] args)
    {
  
        // create a StringBuffer object
        // with a String pass as parameter
        StringBuffer str
            = new StringBuffer("Tony Stark");
  
        try {
            // pass length -15
            str.setLength(-15);
        }
        catch (Exception e) {
  
            e.printStackTrace();
        }
    }
}

chevron_right


Output:

java.lang.StringIndexOutOfBoundsException: String index out of range: -15
    at java.lang.AbstractStringBuffer.setLength(AbstractStringBuffer.java:207)
    at java.lang.StringBuffer.setLength(StringBuffer.java:76)
    at GFG.main(File.java:15)

References:
https://docs.oracle.com/javase/10/docs/api/java/lang/StringBuffer.html#setLength(int)



My Personal Notes arrow_drop_up

I am a Developer I love to code and bring my ideas alive

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.



Improved By : Akanksha_Rai