StringBuilder setLength() in Java with Examples (original) (raw)

Last Updated : 29 Dec, 2022

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 than 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

class GFG {

`` public static void main(String[] args)

`` {

`` StringBuilder str

`` = new StringBuilder("WelcomeGeeks");

`` System.out.println("String length = "

`` + str.length() +

`` " and contains = " + str);

`` str.setLength( 10 );

`` System.out.println("After setLength() String = "

`` + str.toString());

`` }

}

Output:

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

Example 2:

Java

class GFG {

`` public static void main(String[] args)

`` {

`` StringBuilder str

`` = new StringBuilder("Tony Stark will die");

`` System.out.println("String length = "

`` + str.length() +

`` " and contains = \"" + str + "\"");

`` str.setLength( 25 );

`` 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

class GFG {

`` public static void main(String[] args)

`` {

`` StringBuilder str

`` = new StringBuilder("Tony Stark");

`` try {

`` 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)