【前言】:刷题时遇到了条件的逻辑运算符控制问题,即逻辑条件代码的先后影响了程序的执行。
如以下代码:
1.while(array[j-1]%2==0&&j>0){
array[j]=array[j-1];
j--;
}
2.while(j>0&&array[j-1]%2==0){
array[j]=array[j-1];
j--;
}
第一种情况会发生outofIndex异常,即数组下标越界。第二种情况正确执行。
【总结】条件1 && 条件2 条件1为假时不会执行条件2
条件1 || 条件2 条件1为真时不会执行条件2
上述即为逻辑运算符的短路特性