🍒30从尾到头打印链表
题目描述
求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。
思路
👉运算符(按优先级高低)
单目运算符:++和–,
双目运算符:+,-,
移位运算符<<和>>,
关系运算符>,<等,
逻辑运算符&&,||,&,|,^,
赋值=
👉&&,||这两个具有短路特性,若前面的条件判真(或者假),就不会再执行后面的条件。
public class Solution {
public int Sum_Solution(int n) {
int sum = n;
boolean flag = (sum > 0)&&((sum += Sum_Solution(--n)) > 0);
//flag作用:停止递归。&&运算符若左边不满足,将不再继续右边计算
return sum;
}
}