Java StringBuilder substring()方法及示例

来源:这里教程网 时间:2026-02-17 21:14:14 作者:

Java StringBuilder substring()方法及示例

在StringBuilder类中,根据传递给它的参数,有两种类型的substring方法。

substring(int start)

StringBuilder类substring(int start) 方法是一个内置的方法,用于返回一个从索引开始并延伸到该序列结束的子串。该方法返回的字符串包含从索引开始到旧序列结束的所有字符。

语法

public String substring(int start)

参数: 本方法只接受一个参数 start ,它是一个整数类型的值,指的是子串的起始索引。

返回值: 本方法返回 子串 在旧序列的开始到结束的范围内。

异常: 如果start小于0,或者大于这个对象的长度,这个方法会抛出 StringIndexOutOfBoundsException

下面的程序说明了StringBuilder substring()方法。

例1 :

// Java program to demonstrate// the substring() 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("String contains = "                           + str);          // get substring start from index 5        // using substring() and print results        System.out.println("SubSequence = "                           + str.substring(5));    }}

输出:

String contains = GeeksForGeeksSubSequence = ForGeeks

例2: 演示StringIndexOutOfBoundsException

// Java program to demonstrate// Exception thrown by the substring() Method.  class GFG {    public static void main(String[] args)    {          // create a StringBuilder object        // with a String pass as parameter        StringBuilder str            = new StringBuilder("Indian Team Played Well");          try {            // get substring starts from index -7            // using substring() and print            str.substring(-7);        }          catch (Exception e) {            System.out.println("Exception: " + e);        }    }}

输出:

Exception: java.lang.StringIndexOutOfBoundsException: String index out of range: -7

substring(int start, int end)

StringBuilder类的 substring(int start, int end) 方法是一个内置的方法,用来返回一个从索引开始的子串,并延伸到这个序列的索引端1。这个方法返回的字符串包含了从索引开始到索引结束-1的所有字符。

语法

public String substring(int start)

参数: 本方法接受两个参数 start ,它是Integer类型的值,指的是子串的起始索引, end 也是Integer类型的值,指的是子串的结束索引。

返回值: 本方法返回位于老序列的索引开始到索引结束的 子串

异常: 如果start或end为负数或大于length(),或者start大于end,该方法会抛出 StringIndexOutOfBoundsException

下面的程序说明了StringBuilder.substring()方法。

例1 :

// Java program to demonstrate// the substring() 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("String contains = " + str);          // get substring start from index 5 to index 8        // using substring() and print results        System.out.println("SubSequence = "                           + str.substring(5, 8));    }}

输出:

String contains = GeeksForGeeksSubSequence = For

例2: 演示StringIndexOutOfBoundsException

// Java program to demonstrate// Exception thrown by the substring() Method.  class GFG {    public static void main(String[] args)    {          // create a StringBuilder object        // with a String pass as parameter        StringBuilder str            = new StringBuilder("Indian Team Played Well");          try {            // get substring starts from index 7            // and end at index 3            // using substring() and print            str.substring(9, 3);        }          catch (Exception e) {              System.out.println("Exception: " + e);        }    }}

输出:

Exception: java.lang.StringIndexOutOfBoundsException: String index out of range: -6

参考文献:

https://docs.oracle.com/javase/10/docs/api/java/lang/StringBuilder.html#substring(int, int)
https://docs.oracle.com/javase/10/docs/api/java/lang/StringBuilder.html#substring(int)

相关推荐