课程
/后端开发
/Java
/Java入门第一季(IDEA工具)升级版
System.out.println(a&&b +"未通过");为什么不行啊?原文为什么还要再用个括号啊
2015-10-05
源自:Java入门第一季(IDEA工具)升级版 3-5
正在回答
不加括号的话 系统会认为+是 算数运算符的+ 而不是 连接字符串和变量的连接符
这样 b+"未通过" 编译不能通过
还有要说的是算术运算符+的优先级高于逻辑运算符&& 所以才要用优先级更高的()来将他们括起来
無名小人 提问者
無名小人 提问者 回复 無名小人 提问者
天启之魂 回复 無名小人 提问者
無名小人 提问者 回复 天启之魂
楼上的哥们讲解得很清楚了啊! 算数运算符 + 的优先级是比逻辑运算符 && 的优先级要高的。所以,如果在你的输出语句中不加括号的话,编译器会先算 b+“未通过”,之后在进行&&的逻辑运算,这是不符合你的本意的。因此,需要用()来改变运算次序。
有人在吗?
有没有懂的啊
举报
0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始
5 回答((a&&b)+"未通过");中a与b为什么要括号,为什么不能去掉括号
3 回答(a>b));为什么要加俩个括号
3 回答谁能帮忙解释下 System.out.println((a&&b)+"未通过"); System.out.println((a||b)+"通过"); System.out.println((!a)+"未通过"); System.out.println((c^d)+"未通过");
1 回答System.out.println((a||b)+"通过");为啥打印的时候aIIb要用()括起来?
1 回答System.out.println("a等于b:" + (a==b));中为什么要有+