Java StringBuffer类
发布人:shili8
发布时间:2025-01-13 11:28
阅读次数:0
**Java StringBuffer类**
在 Java 中,`StringBuffer` 类是一个线程安全的字符串缓冲区类,它允许对字符串进行修改和追加操作。与 `StringBuilder` 类似,但 `StringBuffer` 是线程安全的,而 `StringBuilder` 不是。
**构造方法**
`StringBuffer` 类有两个构造方法:
* `public StringBuffer()`: 创建一个空的缓冲区。
* `public StringBuffer(int capacity)`: 创建一个指定大小的缓冲区。
java// 创建一个空的缓冲区StringBuffer sb = new StringBuffer(); // 创建一个指定大小的缓冲区StringBuffer sb2 = new StringBuffer(10);
**append()方法**
`append()` 方法用于追加字符串到缓冲区中。它可以追加一个 `String` 对象、一个 `CharSequence` 对象或一个 `int` 值。
java// 追加一个String对象sb.append("Hello, World!"); // 追加一个CharSequence对象sb.append("Java"); // 追加一个int值sb.append(123);
**insert()方法**
`insert()` 方法用于在缓冲区中插入指定的字符串。
java// 在缓冲区的开始位置插入一个String对象sb.insert(0, "Hello,"); // 在缓冲区的结束位置插入一个CharSequence对象sb.insert(sb.length(), "World!");
**delete()方法**
`delete()` 方法用于从缓冲区中删除指定的字符。
java// 删除缓冲区中的前面3个字符sb.delete(0,3); // 删除缓冲区中的最后2个字符sb.delete(sb.length() -2, sb.length());
**reverse()方法**
`reverse()` 方法用于反转缓冲区中的字符串。
java// 反转缓冲区中的字符串StringBuffer sb = new StringBuffer("Hello, World!"); System.out.println(sb.reverse()); // Output: !dlroW ,olleH
**toString()方法**
`toString()` 方法用于将缓冲区中的字符串转换为 `String` 对象。
java// 将缓冲区中的字符串转换为String对象String str = sb.toString(); System.out.println(str); // Output: Hello, World!
**示例代码**
javapublic class StringBufferExample { public static void main(String[] args) { // 创建一个空的缓冲区 StringBuffer sb = new StringBuffer(); // 追加一个String对象 sb.append("Hello, "); // 追加一个CharSequence对象 sb.append("World!"); System.out.println(sb.toString()); // Output: Hello, World! // 在缓冲区的开始位置插入一个String对象 sb.insert(0, "Java "); System.out.println(sb.toString()); // Output: Java Hello, World! // 删除缓冲区中的前面3个字符 sb.delete(0,4); System.out.println(sb.toString()); // Output: Hello, World! // 反转缓冲区中的字符串 StringBuffer reversedSb = new StringBuffer(sb.toString()); reversedSb.reverse(); System.out.println(reversedSb.toString()); // Output: !dlroW ,olleH // 将缓冲区中的字符串转换为String对象 String str = sb.toString(); System.out.println(str); // Output: Hello, World! } }
**总结**
`StringBuffer` 类是一个线程安全的字符串缓冲区类,它允许对字符串进行修改和追加操作。它提供了多种方法来操作缓冲区中的字符串,包括 `append()`、`insert()`、`delete()` 和 `reverse()` 等。通过使用这些方法,可以实现各种复杂的字符串操作。