0
点赞
收藏
分享

微信扫一扫

什么是字符串不可变性?

肉肉七七 2022-03-11 阅读 49
java

什么是字符串不可变性?

1. 声明字符串

初始化一个字符串 str

String str = "Hello";

变量str存储字符串对象的引用
在这里插入图片描述

2. 将字符串变量分配给另一个字符串变量

str分配给str2

String str2 = str;

因为他是相同的字符串对象,所以str2存储相同的引用值
在这里插入图片描述

3. 连接字符串

使用字符串的concat()方法将" World"连接到str

str = str.concat(" World")

str存储新创建的字符串对象的引用,如下所示
在这里插入图片描述
总之,一旦在中创建了字符串,就无法更改它。字符串方法不会更改字符串本身,而是返回新的 String

如果我们需要一个可以修改的字符串,我们将需要StringBufferStringBuilder。否则,垃圾回收将浪费大量时间,因为每次都会创建新字符串。

举报

相关推荐

0 条评论