黑马程序员技术交流社区

标题: 为什么字符串一旦被赋值就不能被改变,看我的实践结果 [打印本页]

作者: Juice.cy.wang    时间: 2015-11-21 17:23
标题: 为什么字符串一旦被赋值就不能被改变,看我的实践结果
String s="诸葛亮";
s=new String("司马懿");
System..out.println(s);
控制台的结果是 司马懿。
所以被赋值后,值还是可以变的。   所以这个结论不理解。
各位解释解释
作者: wangdaban    时间: 2015-11-21 22:15
字符串一旦被赋值不能改变指的是在常量池的值不能改变,你这种操作等于新建立了一个值为司马懿的对象,改变的S指向堆内存中的地址值,而不是在常量池中的值




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2