题目描述
求 1+2+…+n
,要求不能使用 乘除法、for、while、if、else、switch、case
等关键字及条件判断语句 A?B:C
。
样例
输入:10 输出:55
解法
前面的和+后一个即为所求的总和
有 if 的递归方法
public static int Sum_Solution(int n) { int res = n; if(n>0){ res += Sum_Solution(n-1); } return res; }
但题意说不能用 if ,所以:
public static int Sum_Solution(int n) { int res = n; boolean t = (res>0) && ((res += Sum_Solution(n-1))>0); return res; }
java中&和&&的区别
&和&&都是逻辑运算符,用于判断两边同时为真则为真,否则为假。
但是&&当第一个条件为假之后,后面的条件就不执行了,它具有短路功能。
而& 还是要继续执行,直到整个条件语句执行完成为止。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。