java - AND 是否优先于 OR?

标签 java

<分区>

快速提问。在 Java 中,AND 是否优先于 OR?例如,这段代码是如何解释的?

if(statement1 && statement2 || statement3)

这和哪个一样?

if(statement1 && (statement2 || statement3))

if((statement1 && statement2) || statement3)

提前致谢。

最佳答案

是的。很容易发现,API 文档有一个列出运算符优先级的表格:http://docs.oracle.com/javase/tutorial/java/nutsandbolts/operators.html

但是,我认为理解为什么 && 应该优先于 || 是个好主意:前者在很多方面都是乘法作用,而后者是加法作用。考虑两个独立事件AB(A and B)的概率是p(A)*p(B) (A or B) 的概率是 p(A) + p(B)。通过类比著名的 * 优先于 + 的规则,这解释了为什么应以这种方式评估逻辑运算符。

关于java - AND 是否优先于 OR?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14629841/

相关文章:

java - 使用 smtp 发送邮件时出错

java - 通用方法写入列表

java - 如何处理大号。观察员的数量将得到有效更新观察者模式中的时间

java - 单击按钮时,内容不会改变。 - 安卓

java - 从 Java 代码返回值

java - 在 JScrollPane 中使用 PaintComponent 绘图

java - 如何实现/模拟作业调度程序?

java - 如何在没有或较少限制使用上下文的情况下使用 SQLiteOpenHelper?

java - 无法更新 Swing 中的文本区域

java - 如何按索引对数组进行排序? (排序索引)