StringBuffer insert() in Java (original) (raw)
Last Updated : 05 Dec, 2024
The **StringBuffer.insert() method in Java allows us to insert a string representation of a given data type at a specified position in a StringBuffer. This method is useful when we need to modify a string at specific positions without creating a new string each time by making it more efficient than concatenation.
**Example: In the following example, we will insert a **character into a **StringBuffer at a specified position.
Java `
// Java Program to demonstrate StringBuffer // insert() method import java.io.*;
class GFG {
public static void main(String[] args) {
StringBuffer s = new StringBuffer("geeks for geeks");
// Initial string
System.out.println("String: " + s);
// Insert 'E' at position 2
s.insert(2, 'E');
// Prints StringBuffer after insertion
System.out.println("After insertion: " + s);
}
}
`
Output
String: geeks for geeks After insertion: geEeks for geeks
**Explanation: In this example, we insert the character “E” at index 2 in the StringBuffer. The original string “geeks for geeks” becomes “geEeks for geeks” after the insertion.
**Syntax of StringBuffer.insert() Method
str.insert(int position, data_type value);
**Parameters:
- **position: This is the index in string where we need to insert.
- **value: This is the element to be inserted at the position the data type of value can vary.
**Return Type: This method returns a reference to the StringBuffer object.
**Exception: The position must be greater than or equal to 0, and less than or equal to the length of the string.
**Example 1: Use with Boolean Input
In this example, we insert a boolean value at a given position in the StringBuffer.
Java `
// Java program to demonstrate StringBuffer // insert() method for boolean input public class GFG {
public static void main(String[] args) {
StringBuffer sb = new StringBuffer("geeks for geeks");
System.out.println("String: " + sb);
// Insert boolean value at offset 8
sb.insert(8, true);
System.out.println("After insertion: " + sb);
}
}
`
Output
String: geeks for geeks After insertion: geeks fotruer geeks
**Example 2: Use with Character Array Input
In this example, we insert a character array at a given position in the StringBuffer.
Java `
// Java program to demonstrate StringBuffer // insert() method for char array input public class GFG {
public static void main(String[] args) {
StringBuffer sb = new StringBuffer("geeks for geeks");
System.out.println("String: " + sb);
// Character array to be inserted
char[] ch = {'J', 'a', 'v', 'a'};
// Insert character array at offset 8
sb.insert(8, ch);
System.out.println("After insertion: " + sb);
}
}
`
Output
String: geeks for geeks After insertion: geeks foJavar geeks
**Example 3: Use with Float Input
In this example, we insert a float value at a given position in the StringBuffer.
Java `
// Java program to demonstrate StringBuffer // insert() method for float input public class GFG {
public static void main(String[] args) {
StringBuffer sb = new StringBuffer("geeks for geeks");
System.out.println("String: " + sb);
// Insert float value at offset 8
sb.insert(8, 41.35f);
System.out.println("After insertion: " + sb);
}
}
`
Output
String: geeks for geeks After insertion: geeks fo41.35r geeks
**Example 4: Use with Double Input
In this example, we insert a double value into a StringBuffer.
Java `
// Java program to demonstrate StringBuffer // insert() method for double input public class GFG {
public static void main(String[] args) {
StringBuffer sb = new StringBuffer("geeks for geeks");
System.out.println("String: " + sb);
// Insert double value at offset 8
sb.insert(8, 41.35d);
System.out.println("After insertion: " + sb);
}
}
`
Output
String: geeks for geeks After insertion: geeks fo41.35r geeks
Example 5: Use w**ith Long Input
In this example, we insert a long value into a StringBuffer.
Java `
// Java program to demonstrate StringBuffer // insert() method for Long input public class GFG {
public static void main(String[] args) {
StringBuffer sb = new StringBuffer("geeks for geeks");
System.out.println("String: " + sb);
// Insert long value at offset 8
sb.insert(8, 546986L);
System.out.println("After insertion: " + sb);
}
}
`
Output
String: geeks for geeks After insertion: geeks fo546986r geeks
**Example 6: Use with Int Input
In this example, we insert an **integer into a StringBuffer.
Java `
// Java program to demonstrate StringBuffer // insert() method for Int input public class GFG {
public static void main(String[] args) {
StringBuffer sb = new StringBuffer("geeks for geeks");
System.out.println("String: " + sb);
// Insert int value at offset 8
int x = 10;
sb.insert(8, x);
System.out.println("After insertion: " + sb);
}
}
`
Output
String: geeks for geeks After insertion: geeks fo10r geeks