、如何理解字符串一旦初始化就不可以被改变。
String s = "hello";
s += "world";
System.out.println(s);
不可以被改变说的是常量池中的值,并不是引用s(s是可以重新被赋值的)
2、
String s1 = new String("abc");
String s2 = "abc";
s1、s2有区别吗?
第一种方式:第一种方式在内存中存在两个"abc"字符串,一个是在常量池中,一个是在堆内存当中.
第二种方式:在内存中只存在一个"abc"在常量池中. |
|