Java中是否有与Python含or逻辑的if语句等价的写法?
Java 中与 Python
or 等价的条件判断实现 Java 完全支持和 Python or 逻辑一致的多条件或判断,对应的逻辑运算符为||,核心行为和你熟悉的Python or没有区别:只要多个条件里任意一个结果为真,整个判断式就返回真,会执行对应分支的代码;同时自带短路特性,即如果排在前面的条件已经判定为真,后面的条件不会被执行。
你给出的Python示例,对应的Java等价写法如下:
// Java是强类型语言,使用变量前必须先声明类型,这里以int类型举例 int x = 20; int y = 5; if (x > y || 10 < 12) { System.out.println("one of these is true"); }
刚从Python转过来写的时候注意几个语法差异就行:
- Java 强制要求
if后面的判断条件必须放在圆括号里,不能像Python一样直接跟在if关键字后 - 不要把逻辑或
||和单竖线|搞混:|是按位或运算符,做逻辑判断时不会触发短路,哪怕前面的条件已经为真,也会把后面所有条件都执行完,日常写逻辑判断用双竖线||就对了 - Java 用大括号
{}标记代码块边界,不是靠缩进区分,哪怕分支里只有一行执行语句,也建议把大括号写上,避免语法错误
内容的提问来源于stack exchange,提问作者Ethan Paylor Year 11
相关产品推荐
相关产品推荐

