1.题目
2.解法
利用的是短路原理
作为"&&“和”||"操作符的操作数表达式,这些表达式在进行求值时,只要最终的结果已经可以确定是真或假,求值过程便告终止,这称之为短路求值(short-circuit evaluation)。
假如expr1和expr2都是表达式,在下面这个逻辑表达式的求值过程中:
1.expr1的值为0:
expr1 && expr2
expr2将不会进行求值,因为整个逻辑表达式的值已经可以确定为0。
2.expr1的值为1:
expr1 || expr2
expr2将不会进行求值,因为整个逻辑表达式的值已经可以确定为1。
public class Solution {
public int Sum_Solution(int n) {
int sum = n;
// && 两边成立才成立,第一个不成立,便不再判断
boolean bl = (n > 1) && (sum += Sum_Solution(n-1)) > 0;
return sum;
}
}