课程
/后端开发
/Java
/Java入门第三季
System.out.println("s1和s3内存地址相同吗?"+s1==s3);
2016-06-22
源自:Java入门第三季 2-2
正在回答
这个应该是运算符优先级的问题,
"s1和s3内存地址相同吗?"+s1==s3
正确的操作是System.out.println("s1和s3内存地址相同吗?"+(s1==s3));先判断s1==s3是真假,然后与前面的字符串拼接;
如果后面的等式判断不加括号的话,会形成("s1和s3内存地址相同吗?"+s1)==(s3)的判断;前面的字符串与s1的拼接与后面的字符串s3肯定不是相同的,所以等式判断返回false-----
qq_天大小霸王
举报
Java中你必须懂得常用技能,不容错过的精彩,快来加入吧
1 回答为什么重写了equals方法,出来的还是false
3 回答这样写为什么不行? 为什么打印输出不了? 求解答
2 回答为什么它就是一直FALSE
2 回答运行结果还是false,打印输出的内容也不一样了,这是怎么回事?
1 回答求解为什么输出后会是这样