【发布时间】:2020-02-23 18:51:08
【问题描述】:
我假设如果我不能将我的 while 循环转换为 for 循环,那么我就不能完全理解这里的概念。这是我的工作循环:
(我正在尝试实现一个程序,它计算总和 1+2+3+...+n,其中 n 作为用户输入给出。)
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Enter a number: ");
int number = Integer.valueOf(scanner.nextLine());
int sum = 0;
int i = 0;
while (i < number) {
i++;
sum += i;
}
System.out.println(sum);
我在这里查看此用户的答案:https://stackoverflow.com/a/36023451/11522261 并尝试实现它,但它不起作用。
.....
for (i = 0; i < number; i++){
sum += i;
}
System.out.println(sum);
看起来 For Init expression statement 和 ForUpdate 的条件设置正确,但我无法理解这里的差异。
此外,这个练习似乎正在尝试教授循环来解决迭代问题。但我怀疑这并没有帮助我练习递归。也许这个问题有一个更好的递归解决方案。只是在这里大声思考。谢谢!
【问题讨论】:
-
为什么我的问题被否决了?
-
@T.J.Crowder 对,我不想写出来,就像恕我直言最好不要措辞。
-
如果没有发现问题非常具有挑战性或问题具有示范性,也会发生拒绝投票。这里在对 i 求和之前或之后递增。没什么重要的。
标签: java loops while-loop