Java StringBuilder delete()方法及示例

Java StringBuilder delete()方法及示例

StringBuilder类的 delete(int start, int end) 方法从StringBuilder包含的字符串中删除从索引start到索引end-1的字符。这个方法需要两个索引作为参数,start代表第一个字符的索引,endIndex代表要从StringBuilder所包含的字符串中删除的子串的最后一个字符之后的索引,并返回剩余的字符串作为StringBuilder对象。

语法

public StringBuilder delete(int start, int end)

参数: 该方法接受两个参数。

  • start : 子串的第一个字符的索引。
  • end : 子串最后一个字符后的索引。

返回值 : 该方法在删除子串后返回 这个StringBuilder对象

异常: 如果start小于0,或者start大于String的长度,或者start大于end,该方法会抛出 StringIndexOutOfBoundsException

下面的程序演示了StringBuilder类的delete()方法。

例1 :

// Java program to demonstrate
// the delete() 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("Before removal String = "
                           + str.toString());
 
        // remove the substring from index 2 to 8
        StringBuilder afterRemoval = str.delete(2, 8);
 
        // print string after removal of substring
        System.out.println("After removal String = "
                           + afterRemoval.toString());
    }
}

输出

Before removal String = WelcomeGeeks
After removal String = Weeeks

例2 :

// Java program to demonstrate
// the delete() Method.
 
class GFG {
    public static void main(String[] args)
    {
 
        // create a StringBuilder object
        // with a String pass as parameter
        StringBuilder
            str
            = new StringBuilder("GeeksforGeeks");
 
        // print string
        System.out.println("Before removal String = "
                           + str.toString());
 
        // remove the substring from index 8 to 8
        StringBuilder afterRemoval = str.delete(8, 8);
 
        // start equal to end so no change in string
        // print string after removal of substring
        System.out.println("After removal of SubString"
                           + " start=8 to end=8"
                           + " String becomes => "
                           + afterRemoval.toString());
 
        // remove the substring from index 1 to 8
        afterRemoval = str.delete(1, 8);
 
        // print string after removal of substring
        System.out.println("After removal of SubString"
                           + " start=1 to end=8"
                           + " String becomes => "
                           + afterRemoval.toString());
    }
}

输出

Before removal String = GeeksforGeeks
After removal of SubString start=8 to end=8 String becomes => GeeksforGeeks
After removal of SubString start=1 to end=8 String becomes => GGeeks

例3: 演示IndexOutOfBoundException

// Java program to demonstrate
// exception thrown by the delete() Method.
 
class GFG {
    public static void main(String[] args)
    {
 
        // create a StringBuilder object
        // with a String pass as parameter
        StringBuilder
            str
            = new StringBuilder("GeeksforGeeks");
 
        try {
 
            // make start greater than end
            StringBuilder afterRemoval = str.delete(7, 4);
        }
 
        catch (Exception e) {
            System.out.println("Exception: " + e);
        }
    }
}

输出

Exception: java.lang.StringIndexOutOfBoundsException

参考资料:
https://docs.oracle.com/javase/10/docs/api/java/lang/StringBuilder.html#delete(int, int)

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程