1

次のループがあります

for(int i=0;i<1000;i++) { }

現在のイテレーションがJavaの最後のイテレーションであるかどうかを確認するにはどうすればよいですか。ありがとう。動的に取得している値。

4

5 に答える 5

6

あなたの質問によると、比較値が動的かどうか

int myval = 1000;

    for(int i=0;i<myval;i++) { 

        if(i == myval -1){
            // last work
        }

    }
于 2013-01-15T12:02:58.677 に答える
3

もちろん、ループ内で追加で変更されていない限り、これがにi等しいことを確認できます。999

for(int i=0;i<1000;i++) {
    if (i == 999) {
        // Last iteration
    }
    ... // More code
}
于 2013-01-15T12:00:32.357 に答える
1

run変数をチェックするだけです。if(i == 999)..。

于 2013-01-15T12:00:56.333 に答える
1

他の人が示唆したように、あなたは見ることができますif(i==999)。これはほとんどの場合に機能しますが、常に機能するとは限りません。

ループ内で変更するiと、反復 999 に数回遭遇するか、またはまったく発生しない可能性があります。

また、ループ内でbreakorを使用returnすると、999 回目の繰り返しに到達しません。

于 2013-01-15T12:02:33.070 に答える
0

実際には、これは他の回答が示したものとは少し異なります。

int len = 1000;
for (int i=0; i < len; i++) {
  if (i == len-1) {
      // action for last iteration
  }
}
于 2013-01-15T12:06:26.313 に答える