StringBuilder setLength() in Java with Examples - GeeksforGeeks

30 Jul, 2019
The setLength(int newLength) method of StringBuilder is used to set the length of the character sequence equal to newLength.For every index k greater then 0 and less than 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.StringBuilder.setLength() method:Example 1:
// Java program to demonstrate// the setLength() Method.  class GFG {      public static void main(String[] args)    {        // create a StringBuilder object        // with a String pass as parameter        StringBuilder str            = new StringBuilder("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());    }}
Output:
String length = 12 and contains = WelcomeGeeks
After setLength() String = WelcomeGee

Example 2:
// Java program to demonstrate// the setLength() Method.  class GFG {    public static void main(String[] args)    {          // create a StringBuilder object        // with a String pass as parameter        StringBuilder str            = new StringBuilder("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() + "\"");    }}
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:
// Java program to demonstrate// Exception thrown by the setLength() Method.  class GFG {    public static void main(String[] args)    {          // create a StringBuilder object        // with a String pass as parameter        StringBuilder str            = new StringBuilder("Tony Stark");          try {            // pass length -15            str.setLength(-15);        }        catch (Exception e) {              e.printStackTrace();        }    }}
Output:
java.lang.StringIndexOutOfBoundsException: String index out of range: -15
    at java.lang.AbstractStringBuilder.setLength(AbstractStringBuilder.java:207)
    at java.lang.StringBuilder.setLength(StringBuilder.java:76)
    at GFG.main(File.java:15)

References:https://docs.oracle.com/javase/10/docs/api/java/lang/StringBuilder.html#setLength(int)
Akanksha_Rai
java-basics
Java-Functions
Java-StringBuilder
Java
Java
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Comments
Old Comments
Functional Interfaces in Java
Stream In Java
Constructors in Java
Different ways of Reading a text file in Java
Exceptions in Java
Generics in Java
Comparator Interface in Java with Examples
Strings in Java
Difference between Abstract Class and Interface in Java
How to remove an element from ArrayList in Java?