快捷导航

为什么这个运行结果是false而不是"==运算false"

String s1=new String("abcd");                String s2=new String("abcd");                String s3=s1;                System.out.println("==运算:"+s1==s3);补充:我知道是比较他们两的内存地址,但是打印的结果为什么没有打印"==运算"

免责声明:本内容仅代表回答者见解不代表本站观点,请谨慎对待。

版权声明:作者保留权利,不代表本站立场。

回复

使用道具 举报

参与会员2

运算符的顺序关系,+在==之前
"==运算:"+s1 和 s3 是否相同 ,因此是false
加( "==运算:"+s1)==s3解决
回复

使用道具 举报

这个是优先级的问题,所有和字符串运算都是先链接字符串然后再去用算所以是false,加个括号就好了
回复

使用道具 举报

可能感兴趣的问答

发新帖
  • 微信访问
  • 手机APP