(一旦被赋值就不能改变)
1.通过帮助文档,我们知道:字符串是常量;它们的值在创建之后不能更改。所以:String 对象是不可变的; 2.对于"字符串类"的赋值比较特殊:可以不使用new关键字,而直接赋值; Stringstr = "java"; 说明:字符串"java"会存储在"常量池"中。 3.不可变: Stringstr = "Hello"; str= "java";//会产生一个新的空间,将新的地址赋给了str。原值"Hello"的空间被丢弃,但原值没有被更改; 4.关于常量池: 1).当我们使用一个字符串字面量时,虚拟机会先在"常量池"中查找是否有这个值: 如果有:会将此值的引用返回; 如果没有:会开辟新的空间,返回一个新的引用:
|