📜  java stringbuilder setcharat - Java (1)

📅  最后修改于: 2023-12-03 15:15:57.782000             🧑  作者: Mango

Java StringBuilder setCharAt()

在 Java 中,StringBuilder 是一个可变字符串类,它允许对字符串进行添加、删除和修改等操作,与String 类相比,具有较高的效率和较小的内存占用。

StringBuilder 的 setCharAt() 方法用于修改索引位置上的字符,具体用法如下:

StringBuilder sb = new StringBuilder("Java");
sb.setCharAt(2, 'M');
System.out.println(sb.toString()); // 输出 "Java"

上述代码中,我们在字符串“Java”中的索引位置为 2 的位置上修改了字符,将其改为 M。最后输出的结果为 “Jama”,说明字符确实被修改了。

需要注意的是,setCharAt() 方法的参数分别为字符的索引位置和需要修改的字符。如果索引位置超过了字符串长度,会抛出 IndexOutOfBoundsException 异常。

StringBuilder 和 String 的区别

String 是不可变字符串,一旦创建就无法修改,每次修改都会新创建一个对象,相对较慢且会浪费内存。

StringBuilder 是可变字符串,允许对其进行添加、删除和修改等操作,每次修改不会新创建一个对象,而是在原对象上进行操作,因此效率更高,占用内存更小。

setCharAt() 的返回值和异常

setCharAt() 方法没有返回值(void),但如果索引位置超过了字符串长度,会抛出 IndexOutOfBoundsException 异常。

总结

StringBuilder 的 setCharAt() 方法允许修改字符串中特定索引位置上的字符,它的效率比 String 更高,占用内存更小,是字符串操作的首选类。需要注意的是,如果索引位置超过了字符串长度,会抛出 IndexOutOfBoundsException 异常。