StringBuffer delete() Method in Java with Examples (original) (raw)
Last Updated : 02 Feb, 2022
The java.lang.StringBuffer.delete() is an inbuilt method in Java which is used to remove or delete the characters in a substring of this sequence. The substring starts at a specified index start_point and extends to the character at the index end_point.
Syntax :
public StringBuffer delete(int startpoint, int endpoint)
Parameters : The method accepts two parameters of integer type:
start_point – This refers to the beginning index and is included in the count.
end_point – This refer to the ending index and is excluded from the count.
Return Value : The method returns the string after deleting the substring formed by the range mentioned in the parameters.
Exceptions : StringIndexOutOfBoundsException occurs if the start_point is negative, greater than length(), or greater than the end_point.
Examples :
Input: String = "Apple" start_point = 2 end_point = 4
Output: Ape
Input: String = "GeeksforGeeks" start_point = 2 end_point = 7
Output: GerGeeks
Below programs illustrate the java.lang.StringBuffer.delete() method:
Program 1:
java
import
java.lang.*;
public
class
geeks {
`` public
static
void
main(String[] args)
`` {
`` StringBuffer sbf =
new
StringBuffer(
"Geeksforgeeks"
);
`` System.out.println(
"string buffer = "
+ sbf);
`` sbf.delete(
6
,
8
);
`` System.out.println(
"After deletion string buffer is = "
+ sbf);
`` }
}
Output:
string buffer = Geeksforgeeks After deletion string buffer is = Geeksfgeeks
Program 2:
java
import
java.lang.*;
public
class
geeks {
`` public
static
void
main(String[] args)
`` {
`` StringBuffer sbf =
new
StringBuffer(
"Welcome to Geeksforgeeks"
);
`` System.out.println(
"string buffer = "
+ sbf);
`` sbf.delete(
5
,
9
);
`` System.out.println(
"After deletion string buffer is = "
+ sbf);
`` }
}
Output:
string buffer = Welcome to Geeksforgeeks After deletion string buffer is = Welcoo Geeksforgeeks
Program 3: Here the index is negative.
java
import
java.lang.*;
public
class
geeks {
`` public
static
void
main(String[] args)
`` {
`` StringBuffer sbf =
new
StringBuffer(
"Welcome to Geeksforgeeks"
);
`` System.out.println(
"string buffer = "
+ sbf);
`` sbf.delete(-
5
,
9
);
`` System.out.println(
"After deletion string buffer is = "
+ sbf);
`` }
}
Output:
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: -5 at java.lang.AbstractStringBuilder.delete(AbstractStringBuilder.java:756) at java.lang.StringBuffer.delete(StringBuffer.java:430) at geeks.main(geeks.java:13)
Program 4: Here the index is not present.
java
import
java.lang.*;
public
class
geeks {
`` public
static
void
main(String[] args)
`` {
`` StringBuffer sbf =
new
StringBuffer(
"Welcome to Geeksforgeeks"
);
`` System.out.println(
"string buffer = "
+ sbf);
`` sbf.delete(
99
,
109
);
`` System.out.println(
"After deletion string buffer is = "
+ sbf);
`` }
}
Output:
Exception in thread "main" java.lang.StringIndexOutOfBoundsException at java.lang.AbstractStringBuilder.delete(AbstractStringBuilder.java:760) at java.lang.StringBuffer.delete(StringBuffer.java:430) at geeks.main(geeks.java:13)