如果我可以创建一个字符串并给它一个值,这怎么可能呢?然后,我可以像这样简单地覆盖它的值:
String a="abc";
a="def";
我怎么可能改变的值a
?我一定在这里遗漏了一些东西。我知道每当创建 String 对象时都会使用 Strings 文字,而不是每次都创建 String 的新实例
请帮忙,谢谢。
你没有改变它的价值,你正在创造一个新的String
。从技术上讲,你的变量改变了它的值(memory location its pointing to)
来引用一个新的String
对象,但它指向新的String
对象不相同String
object.
您实际上并没有改变原始值String
您只是引用一个新对象String
因此,虽然变量的值确实改变了,但实际上并没有改变原始值String
对象...希望这是有道理的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)