为了账号安全,请及时绑定邮箱和手机立即绑定

String对象不可变解释。

String对象不可变解释。

高山彝人 2016-04-21 01:54:05
如图所示,为什么我的str1的值没有改变,而S2的值就改变了呢?不是说Java String 对象不可变吗?
查看完整描述

3 回答

已采纳
?
蜂之谷

TA贡献564条经验 获得超863个赞

str1当然不会变,changeValue方法只是将str1作为参数,并没有改变str1的值;s2你将s2拼了个world重新赋给了s2,当然变了

查看完整回答
反对 回复 2016-04-21
?
阿木木amm

TA贡献4条经验 获得超1个赞

修改完后要赋值给str1才有效。第15行代码改为

str.str1=str.changeValue(str.str1);

你再试试。

查看完整回答
反对 回复 2016-04-22
?
一毛钱

TA贡献156条经验 获得超57个赞

你的changValue函数不是改变str1的,他只是获取一个值,如果想要改变可以这样写

public String changeValue(String str){
str1=str+"World";
return str1;
}


查看完整回答
反对 回复 2016-04-21
  • 3 回答
  • 0 关注
  • 1547 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信