string和stringbuffer相互转换例题
时间: 2025-07-25 08:46:23 浏览: 9
### Java 中 String 和 StringBuffer 相互转换的示例
#### 1. **String 转换为 StringBuffer**
可以通过 `StringBuffer` 类的构造函数实现从 `String` 到 `StringBuffer` 的转换。以下是具体代码示例:
```java
public class StringTostringBuffer {
public static void main(String[] args) {
String str = "Hello";
// 使用 StringBuffer 构造函数将 String 转换为 StringBuffer
StringBuffer stringBuffer = new StringBuffer(str);
System.out.println("Original String: " + str);
System.out.println("Converted StringBuffer: " + stringBuffer);
// 对 StringBuffer 执行修改操作
stringBuffer.append(", World!");
System.out.println("Modified StringBuffer: " + stringBuffer);
}
}
```
此代码片段展示了如何通过 `StringBuffer` 的构造函数创建一个新的 `StringBuffer` 实例,并对其进行进一步的操作[^1]。
---
#### 2. **StringBuffer 转换为 String**
可以调用 `StringBuffer` 的 `toString()` 方法来将其转换回 `String`。以下是具体的代码示例:
```java
public class StringBufferToString {
public static void main(String[] args) {
StringBuffer stringBuffer = new StringBuffer("Hello");
System.out.println("Original StringBuffer: " + stringBuffer);
// 使用 toString() 将 StringBuffer 转换为 String
String str = stringBuffer.toString();
System.out.println("Converted String: " + str);
// 继续对原始 StringBuffer 进行修改
stringBuffer.append(", World!");
System.out.println("Modified StringBuffer: " + stringBuffer);
// 再次获取最新的 String 表示形式
String updatedStr = stringBuffer.toString();
System.out.println("Updated Converted String: " + updatedStr);
}
}
```
在此代码中,`toString()` 方法被用来将 `StringBuffer` 转换为不可变的 `String`,并展示其在不同状态下的表现[^2]。
---
#### 3. **综合示例:双向转换**
下面是一个完整的例子,演示了 `String` 和 `StringBuffer` 之间的相互转换过程:
```java
public class StringAndStringBufferConversion {
public static void main(String[] args) {
// Step 1: Convert String to StringBuffer
String originalString = "Java Programming";
StringBuffer bufferFromString = new StringBuffer(originalString);
System.out.println("Step 1 - Original String converted to StringBuffer: " + bufferFromString);
// Modify the StringBuffer content
bufferFromString.reverse(); // Reverse the contents of the StringBuffer
System.out.println("Step 2 - Modified StringBuffer (Reversed): " + bufferFromString);
// Step 3: Convert StringBuffer back to String
String finalString = bufferFromString.toString();
System.out.println("Step 3 - Final String after conversion from modified StringBuffer: " + finalString);
}
}
```
这段代码不仅实现了两种类型的互相转换,还利用了 `reverse()` 方法作为中间步骤的一部分,体现了 `StringBuffer` 的灵活性[^1]。
---
### 总结
- `String` 是不可变的对象,而 `StringBuffer` 是可变的线程安全字符序列容器。
- 可以通过 `StringBuffer` 的构造函数完成从 `String` 到 `StringBuffer` 的转换;反之,则可通过 `toString()` 方法实现反向转换[^3]。
---
阅读全文
相关推荐


















