Java StringBuilder setCharAt()方法及实例

Java StringBuilder setCharAt()方法及实例

StringBuilder类的 setCharAt(int index, char ch) 方法用于设置作为ch传递的位置索引上的字符。该方法将旧的序列改变为代表一个新的序列,该序列与旧的序列相同,唯一的区别是在位置索引上出现了一个新的字符ch。index参数必须大于或等于0,并且小于StringBUilder对象所包含的字符串的长度。

语法

public void setCharAt(int index, char ch)

参数:

这个方法接受两个参数。

  1. index – 整数类型的值,指的是你要设置的字符的索引。
  2. ch – 字符类型的值,指的是新的字符。

返回:

该方法不返回任何东西。

异常:

如果索引为负数,大于length(),则出现IndexOutOfBoundsException。

下面的程序说明了java.lang.StringBuilder.setCharAt()方法:

示例1 :

// Java program to demonstrate
// the setCharAt() 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("String = "
                           + str.toString());
  
        // set char at index 2 to 'L'
        str.setCharAt(2, 'L');
  
        // print string
        System.out.println("After setCharAt() String = "
                           + str.toString());
    }
}

输出

String = WelcomeGeeks
After setCharAt() String = WeLcomeGeeks

例2 :

// Java program to demonstrate
// the setCharAt() Method.
  
class GFG {
    public static void main(String[] args)
    {
  
        // create a StringBuilder object
        // with a String pass as parameter
        StringBuilder str
            = new StringBuilder("Tony Stark will die");
  
        // print string
        System.out.println("String = "
                           + str.toString());
  
        // set char at index 9 to '1'
        str.setCharAt(9, '1');
  
        // print string
        System.out.println("After setCharAt() String = "
                           + str.toString());
    }
}

输出

String = Tony Stark will die
After setCharAt() String = Tony Star1 will die

例3: 当传递负的指数时。

// Java program to demonstrate
// Exception thrown by the setCharAt() Method.
  
class GFG {
    public static void main(String[] args)
    {
  
        // create a StringBuilder object
        // with a String pass as parameter
        StringBuilder str
            = new StringBuilder("Tony Stark");
  
        try {
            // pass  index -15
            str.setCharAt(-15, 'A');
        }
        catch (Exception e) {
  
            e.printStackTrace();
        }
    }
}

输出

java.lang.StringIndexOutOfBoundsException: String index out of range: -15
    at java.lang.AbstractStringBuilder.setCharAt(AbstractStringBuilder.java:407)
    at java.lang.StringBuilder.setCharAt(StringBuilder.java:76)
    at GFG.main(File.java:16)

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

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程