首页 新闻 会员 周边

求问,一个字符串加上""符号之后放入常量池居然与原字符串不相同了!这是怎么回事

0
悬赏园豆:20 [已关闭问题] 关闭于 2019-12-08 20:55

String s1 = "疯狂JAVA";
String s2 = s1+ "" ;
System.out.println(s2 == s1); // 1
s2.intern();
System.out.println(s2 == s1); // 2

程序输出为:
false
false

请问大家,这个该如何解释呀?

日进一卒的主页 日进一卒 | 初学一级 | 园豆:154
提问于:2019-12-08 20:49
< >
分享
所有回答(1)
0

字符串比较用equals方法:
String s1 = "疯狂JAVA";
String s2 = s1+ "" ;
System.out.println(s2.equals(s1));
s2.intern();
System.out.println(s2.equals(s1));
程序输出:
true
true

闪存最后一个地球人 | 园豆:889 (小虾三级) | 2019-12-09 16:10

不好意思,没注意到已关闭。。。。。

清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册