String s1 = "abc"; String s2 = new String("abc"); System.out.println(s1==s2); String s3 = "你好吗"; String s4 ="你"; String s5 ="好吗"; System.out.println(s3==(s4+s5))
时间: 2023-04-04 08:02:59 浏览: 123
通过String.intern()方法浅谈堆中常量池
s1 == s2 的结果是 false,因为 s1 是字符串常量池中的字符串,s2 是在堆中新创建的字符串对象,它们的引用地址不同。
s3 == (s4+s5) 的结果也是 false,因为 s4+s5 会创建一个新的字符串对象,而不是从字符串常量池中获取。
阅读全文