StringBuffer 是 Java 中用于表示可变字符串的类,它属于 java.lang 包。与 String 不同,StringBuffer 允许对字符串进行修改,而不会创建新的对象。这对于需要频繁修改字符串的情况非常有用。

创建 StringBuffer 对象:
StringBuffer stringBuffer = new StringBuffer();

可以在构造函数中传入初始字符串:
StringBuffer stringBuffer = new StringBuffer("Hello");

StringBuffer 常用方法:

1. append(String str): 将指定字符串追加到当前 StringBuffer 对象的末尾。
    StringBuffer buffer = new StringBuffer("Hello");
    buffer.append(", World!");
    System.out.println(buffer.toString());  // "Hello, World!"

2. insert(int offset, String str): 将指定字符串插入到当前 StringBuffer 对象的指定位置。
    StringBuffer buffer = new StringBuffer("Hello");
    buffer.insert(5, ", World!");
    System.out.println(buffer.toString());  // "Hello, World!"

3. delete(int start, int end): 删除当前 StringBuffer 对象中的指定范围的字符。
    StringBuffer buffer = new StringBuffer("Hello, World!");
    buffer.delete(5, 13);
    System.out.println(buffer.toString());  // "Hello!"

4. deleteCharAt(int index): 删除当前 StringBuffer 对象中指定位置的字符。
    StringBuffer buffer = new StringBuffer("Hello, World!");
    buffer.deleteCharAt(5);
    System.out.println(buffer.toString());  // "Hello World!"

5. replace(int start, int end, String str): 用指定字符串替换当前 StringBuffer 对象中的指定范围的字符。
    StringBuffer buffer = new StringBuffer("Hello, World!");
    buffer.replace(7, 12, "Java");
    System.out.println(buffer.toString());  // "Hello, Java!"

6. reverse(): 反转当前 StringBuffer 对象中的字符顺序。
    StringBuffer buffer = new StringBuffer("Hello, World!");
    buffer.reverse();
    System.out.println(buffer.toString());  // "!dlroW ,olleH"

7. toString(): 将 StringBuffer 对象转换为字符串。
    StringBuffer buffer = new StringBuffer("Hello, World!");
    String result = buffer.toString();

StringBuffer 是线程安全的,但相对于单线程的应用程序,它的性能可能较差。如果在单线程环境下使用,通常推荐使用性能更好的 StringBuilder 类。StringBuilder 提供了与 StringBuffer 相同的方法,但不保证线程安全。


转载请注明出处:http://www.zyzy.cn/article/detail/13472/Java