码迷,mamicode.com
首页 > 编程语言 > 详细

[Java开发之路](8)图说字符串的不变性

时间:2015-12-27 01:12:33      阅读:251      评论:0      收藏:0      [点我收藏+]

标签:

我们用下面一组图来说明Java的不变性。

1.声明一个字符串
String s = "abcd";
s存储了字符串对象的引用。下面图片中的箭头就表示这种存储引用。
技术分享
2. 将一个字符串变量赋值给另外一个字符串变量
String s2 = s;
s2变量存储了同样的引用值。所以,两个变量指向同一个字符串对象。
技术分享
3. 合并字符串

s = s.concat("ef");
s现在存储的是新生成的字符串对象的引用。
技术分享
4. 总结

一旦一个字符串在内存(堆)上创建,这个字符串就不会改变。我们应该注意到String类的所有方法都不会改变字符串本身,而是返回一个新的字符串。

如果我们需要一个可以改变的字符串,我们可以使用StringBuffer或者StringBuilder。否则,因为每次都是创建一个新的字符串。












[Java开发之路](8)图说字符串的不变性

标签:

原文地址:http://blog.csdn.net/sunnyyoona/article/details/50410801

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!