A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

String类为什么是不可变的?求原理

13 个回复

倒序浏览
因为它在内存底层中是以字符数组排列的。
回复 使用道具 举报
同问   求大神解答
回复 使用道具 举报
你可以去看源代码,里面有写String被final修饰了,所以是一个常量
回复 使用道具 举报
duzhi409 发表于 2015-6-12 22:53
你可以去看源代码,里面有写String被final修饰了,所以是一个常量

我看了资料说StringBuffer是可变的,可我看到StringBuffer也是final修饰的,为什么它就可变呢?
回复 使用道具 举报
楼上正解
回复 使用道具 举报
学习了。
回复 使用道具 举报
zhaopy 中级黑马 2015-6-13 20:14:01
8#
学习了!
回复 使用道具 举报
楼上正解,学习了
回复 使用道具 举报
论坛里大神实在是太多了
回复 使用道具 举报
kikt 发表于 2015-6-13 14:41
String和StringBuffer包括StringBuilder底层都是用char[]储存数据的
不同的是 String类的char[]数据前面有 ...

非常感谢!
回复 使用道具 举报
kikt 发表于 2015-6-13 14:41
String和StringBuffer包括StringBuilder底层都是用char[]储存数据的
不同的是 String类的char[]数据前面有 ...

谢谢,懂了
回复 使用道具 举报
多看看API
回复 使用道具 举报
kikt 发表于 2015-6-13 14:41
String和StringBuffer包括StringBuilder底层都是用char[]储存数据的
不同的是 String类的char[]数据前面有 ...

谢谢!自己整理了一下,懂了!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马