先来看如下代码一:
String str = "12";
if(str.length()<5 || !str.substring(0,3).equals("780")) System.out.println("网点号不符合规范");
执行结果是:
网点号不符合规范
再来看如下代码二:
String str = "12";
if(!str.substring(0,3).equals("780")) System.out.println("网点号不符合规范");
执行结果是:
java.lang.StringIndexOutOfBoundsException: String index out of range: 3
Process finished with exit code -1
于是,我们可以得出以下结果:
java的“或”是顺序执行的,如果第一个条件已经达到可以判断整个表达式的效果,那么剩余的条件就不会执行了(否则代码一也会报StringIndexOutOfBoundsException)
本文通过两个示例代码展示了Java中逻辑或运算符('||')的顺序执行特性。当左侧表达式足以确定整体逻辑状态时,右侧表达式将不再被评估,以此避免潜在的运行时错误。
1166

被折叠的 条评论
为什么被折叠?



