在第一次匹配后循环通过数组并执行不同的操作?

C H*_*ill 2 java for-loop if-statement

正如我在下面尝试构造的那样,我想要一个if语句,它在for循环中执行,在第一次处理时执行一个操作,而在其他时间执行其他操作.

if (true) {
    for (value i : valueList) {
        if (i = true) {
             First time do this!
             Second time onwards do this!
         }

    }
}
Run Code Online (Sandbox Code Playgroud)

java中有一个允许我这样做的函数吗?

Boh*_*ian 8

我总是使用一个标志,在第一个块中取消设置以将其关闭:

boolean first = true;
for ( value i : valueList ) {
    if ( i ) {
        if (first) {
            // First time do this!
            first = false;
        } else {
            // Second time onwards do this!
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

注意我删除了越野车的分配if (i = true)永远 true,分配truei(重挫你的循环变量的值).

而且,外部if (true)是不必要的.