class test{ public static void main(String[] args) { String a = "1"; String b = "1"; System.out.println(a.equals(b)); } }
这段代码中.为什么会输出true呢 它们的值一样的.但是那个哈希码也是一样的吗
String类特殊的,当创建一个String的实例后,这个值会保存在一个叫做存储池的位置,当两个字符串的值相同时,变量名实际会指向同一内存空间。
b和a指向同一个引用