StringBuilder是Java中的一个可变字符串类,它位于java.lang
包中。与String类不同的是,StringBuilder对象的内容可以修改,适用于需要频繁进行字符串拼接、修改或操作的场景。
StringBuilder的主要特点包括:
-
可变性:StringBuilder对象的内容可以被修改,可以进行字符串的追加、插入、替换和删除等操作,而不会创建新的字符串对象。
-
效率高:由于StringBuilder是可变的,它避免了频繁创建和销毁字符串对象的开销,因此在处理大量字符串拼接的情况下,StringBuilder通常比String效率更高。
以下是StringBuilder的常用方法和示例:
append(String str)
:将指定的字符串追加到当前StringBuilder对象的末尾。StringBuilder sb = new StringBuilder(); sb.append("Hello").append(" ").append("World"); System.out.println(sb.toString()); // 输出:Hello World
insert(int offset, String str)
:在指定的位置插入指定的字符串。StringBuilder sb = new StringBuilder("Hello World"); sb.insert(5, ","); System.out.println(sb.toString()); // 输出:Hello, World
replace(int start, int end, String str)
:用指定的字符串替换从start到end位置的字符。StringBuilder sb = new StringBuilder("Hello World"); sb.replace(6, 11, "Java"); System.out.println(sb.toString()); // 输出:Hello Java
delete(int start, int end)
:删除从start到end位置的字符。StringBuilder sb = new StringBuilder("Hello World"); sb.delete(5, 11); System.out.println(sb.toString()); // 输出:Hello
reverse()
:反转当前StringBuilder对象中的字符顺序。StringBuilder sb = new StringBuilder("Hello"); sb.reverse(); System.out.println(sb.toString()); // 输出:olleH
length()
:返回当前StringBuilder对象中字符序列的长度。StringBuilder sb = new StringBuilder("Hello"); System.out.println(sb.length()); // 输出:5
toString()
:将StringBuilder对象转换为String对象。StringBuilder sb = new StringBuilder("Hello"); String str = sb.toString(); System.out.println(str); // 输出:Hello