java - 'for' 循环中的复杂更新规则

标签 java for-loop while-loop

我正在尝试编写以下“while”循环:

int x = N-1, y = 0;

while ( y < M ) {

    /* Some work */

    if ( x > 0 )
        x--;
    else 
        y++;

}

作为“for”循环。这是我失败的尝试:

for ( int x = N-1, y = 0 ; y < M ; ((x>0)?x--:y++) ) {
    /* Some work */
}

编译失败,因为正如编译器所说,更新规则不是语句。

您有什么方法可以自然地将上面的“while”循环写成“for”循环吗?

最佳答案

您始终可以将更新规则留空

for ( int x = N-1, y = 0 ; y < M ; ) {

 if ( x > 0 )
        x--;
    else 
        y++;

}

关于java - 'for' 循环中的复杂更新规则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13954789/

相关文章:

java - 字符串可以用来存储超过 1 个输入吗

python - 当 for 循环的变量有一段时间条件时,如何在 for 循环中获得步骤跳转

javascript - 如何使用 vanilla JS 使用各部分中的 HTML 元素动态更新模式窗口的内容?

c - 我的 strstr 函数有效,但一个旨在测试它的程序说它不起作用

c - 程序突然结束,C 中的 while 循环内有 switch case

java - 基于 Java 代码的 Crypt::CBC 的 Perl 问题

Java - 找不到逻辑错误

java - 在 Java 中将日期从 UTC 转换为 PST

javascript - 如何以函数式风格做嵌套的 For 循环

php - 一段时间后 file_put_contents