求大神解决

来源:3-4 Java中的比较运算符

忆_卿

2020-08-13 22:16

http://img.mukewang.com/5f354a580001ce5609280575.jpg为什么System.out.println("a等于b:"+a==b);会报错? 

 System.out.println("a等于b:"+(a==b));       a==b 加() 就不会报错, 为什么要加括号  谁知道什么原因么?

写回答 关注

2回答

  • 祸用
    2020-08-21 14:16:15

    这不是常识问题吗,,因为我们拼接了字符串 我们要把a==b当成一个整体来比较啊,才能看是true还是false。就像你要比较1+1和2+2谁大,不运算结果的情况下不就是 加括号吗(1+1)(2+2)要当成整体。 
    System.out.println("a等于b吗:"+(a==b));  把他当成整体来看,如果不是整体,那不就是"a等于b吗"+a==b;不当成整体就读不顺 报错了。我们本来加号只是做拼接作用,你不加括号就变成了赋值运算,把b赋值给a  这不通顺呀

    忆_卿

    a==b应该是比较运算符吧, a=b才是赋值。

    2020-08-24 20:34:15

    共 1 条回复 >

  • 柯一梦
    2020-08-14 15:03:06

    运算顺序问题吧,加()优先级高

Java入门第一季(IDEA工具)升级版

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

1165174 学习 · 17581 问题

查看课程

相似问题