一、题目描述
求1+2+3+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。
二、代码
public class Solution {
public int Sum_Solution(int n) {
//IntStream.range(1,n+1).sum();
boolean flag = n > 0 && (n += Sum_Solution(n - 1)) > 0;
return n;
}
}
三、思路分析
用的是&&和||的判断原理。A&&B,一旦A为false就不判断B,A||B,一旦A为true就不判断B。所以在这个情况下直接用A来做条件控制即可。