A String object is immutable, i.e. a String cannot be changed once created. In situations where you need to perform repeated modifications to a string, we need StringBuilder class. StringBuilder is utilized to append input data to the internal buffer. We can perform numerous operations with the support of methods on the StringBuilder. This operation comprises appending data, inserting data, and removing data.
important points:
- The StringBuilder class is beneficent for mutable strings to extend effectively.
- The instance of StringBuilder is utilized like a String.
- Strings of Scala are immutable so, when you require a mutable String then you can use StringBuilder.
Operations performed by the StringBuilder class
- Appending character: This operation is helpful in appending character.
Example:
Scala // Scala program to append // a character // Creating object object GFG { // Main method def main(args: Array[String]) { // Creating StringBuilder val x = new StringBuilder("Author"); // Appending character val y = (x += 's') // Displays the string after // appending the character println(y) } }
Output:Here, (x += ' ') is utilized to append a character.Authors
- Appending String: This operation is helpful in appending string.
Example:
Scala // Scala program to append // a String // Creating object object GFG { // Main method def main(args: Array[String]) { // Creating StringBuilder val x = new StringBuilder("Authors"); // Appending String val y = (x ++= " of GeeksforGeeks") // Displays the string after // appending the string println(y) } }
Output:Here, (x ++= ' ') is utilized to append String.Authors of GeeksforGeeks
- Appending String representation of number: Here, the number can be of any type like Integer, Double, Long, Float, etc.
Example:
Scala // Scala program to append // String representation // of number // Creating object object num { // Main method def main(args: Array[String]) { // Creating StringBuilder val x = new StringBuilder("Number of Contributors : "); // Appending String // representation of number val y = x.append(800) // Displays the string after // appending the number println(y) } }
Output:Here, x.append(n) is utilized to append the String representation of the number, where 'n' is the number of any type.Number of Contributors : 800
- Resetting the content of the StringBuilder: It is helpful in resetting the content by making it empty.
Example:
Scala // Scala program to reset // the content // Creating object object GFG { // Main method def main(args: Array[String]) { // Creating StringBuilder val x = new StringBuilder("Hello") // Resetting the content val y = x.clear() // Displays empty content println(y) } }
Output:Here, x.clear() is utilized to clear the content of the StringBuilder.()
- Delete operation: This operation is helpful in deleting characters from the content of the StringBuilder.
Example:
Scala // Scala program to perform // delete operation // Creating object object delete { // Main method def main(args: Array[String]) { // Creating StringBuilder val q = new StringBuilder("Computer Science") // Deleting characters val r = q.delete(1, 3) // Displaying string after // deleting some characters println(r) } }
Output:Here, q.delete(i, j) is utilized to delete the character indexed from i to (j - 1).Cputer Science
- Insertion operation: This operation is helpful in inserting Strings.
Example:
Scala // Scala program to perform // insertion operation // Creating object object insert { // Main method def main(args: Array[String]) { // Creating StringBuilder val q = new StringBuilder("GfG CS portal") // inserting strings val r = q.insert(4, "is a " ) // Displays string after // insertion of required // string println(r) } }
Output:Here, q.insert(i, "s") is utilized to insert the String (s) at index i.GfG is a CS portal
- Converting StringBuilder to a String: StringBuilder can be converted to a String using this operation.
Example:
Scala // Scala program of Converting // StringBuilder to a String // Creating object object builder { // Main method def main(args: Array[String]) { // Creating StringBuilder val q = new StringBuilder("GeeksforGeeks") // Applying conversion // operation val r = q.toString // Displays String println(r) } }
Output:Here, q.toString is utilized to convert StringBuilder to a string.GeeksforGeeks