【问题标题】:How can i do the same thing using For loops instead of while?我如何使用 For 循环而不是 while 来做同样的事情?
【发布时间】:2015-09-25 04:09:52
【问题描述】:

我需要修改程序,以便对于所有大于或等于 0 的 k 值,程序都像以前一样工作,但是对于所有小于 0 的 k 值,程序显示,k,k -1, k-2, ... 0。您只能使用 for 循环。 所以我的代码是这样的,使用while循环,

     while (i != k && k > 0) {
         i = i + 1;
         System.out.println(i);
     }
     while (k <= 0) {
         System.out.println(k);
         k = k + 1;
     }

我成功地处理了正数,但我遇到了负数问题。

这是我为正面写的 for 循环

    for (int i = 0; i <= k; i = i + 1) {
        System.out.println(i);
    }

请帮忙!!!!

【问题讨论】:

    标签: java loops for-loop while-loop


    【解决方案1】:

    The for Statement 的 Oracle 文档说(部分)

    for 语句提供了一种迭代一系列值的紧凑方法。程序员经常将其称为“for 循环”,因为它反复循环直到满足特定条件。 for语句的一般形式可以表示为:

     for (initialization; termination; increment) {
         statement(s)
     }
    

    使用此版本的 for 语句时,请记住:

    • 初始化表达式初始化循环;它在循环开始时执行一次。
    • 当终止表达式的计算结果为 false 时,循环终止。
    • 每次循环迭代后都会调用增量表达式;这个表达式增加或减少一个值是完全可以接受的。

    tl;dr 你可以做类似的事情

    for (; i != k && k > 0;) {
        System.out.println(++i);
    }
    for (; k <= 0; k++) {
        System.out.println(k);
    }
    

    【讨论】:

    • 感谢您的回答!你是对的,我会尝试一下,看看它是否适合我。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-06
    • 1970-01-01
    • 1970-01-01
    • 2020-08-14
    • 2020-12-10
    • 2011-12-27
    • 1970-01-01
    相关资源
    最近更新 更多