api中查询String和StringBuffer的区别,举个例子用一用
时间: 2024-03-01 21:49:37 浏览: 28
在Java API中,String和StringBuffer都是字符串类型的类,但是它们之间有一些区别。
1. String是一个不可变的类,一旦创建就不能修改它的值,而StringBuffer是可变的,可以修改它的值。
2. 在对String进行修改时,实际上是创建了一个新的String对象,而原有的String对象不变,而对StringBuffer进行修改时,它本身的值会发生改变。
下面是一个例子,演示String和StringBuffer的区别:
```
String str = "Hello";
str += " World"; // 创建了一个新的String对象
System.out.println(str);
StringBuffer sb = new StringBuffer("Hello");
sb.append(" World"); // 对sb本身进行修改
System.out.println(sb.toString());
```
输出结果:
```
Hello World
Hello World
```
在这个例子中,我们首先创建了一个String对象`str`,然后使用`+=`操作符将其修改为`"Hello World"`。由于String是不可变的,所以实际上是创建了一个新的String对象,原有的String对象不变。输出结果为`Hello World`。
接下来,我们创建了一个StringBuffer对象`sb`,并将其初始化为`"Hello"`。然后使用`append()`方法将其修改为`"Hello World"`。由于StringBuffer是可变的,所以它本身的值会发生改变。输出结果为`Hello World`。
因此,在需要频繁修改字符串的情况下,使用StringBuffer会更加高效。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)