プログラムdeタマゴ

nodamushiの著作物は、文章、画像、プログラムにかかわらず全てUnlicenseです

JAVA for-each文でカウント

ふらふらネットサーフィン(死語)をしているとひしだま氏のイテレーターでループするときに何度目かのループか?を知りたいときにどうするか、というトピックでこう書いてあった。
Java駄目メモ

パターン3:
これなら、素直にfor-each構文に変換することも可能。


int i = 0;
for (Data data : list) {
System.out.printf("[%d]:%s\n", i, data.toString());
i++;
}
ただし、途中でcontinueを使う場合はループ末尾のi++が実行されないことになるので注意。

とあるが、パターン3はこうした方が良い

int i=-1;
for(Data data:list){
	i++;
	System.out.printf("[%d]:%s\n", i, data.toString());
}

というだけのこと。
どうでもいいけど、なんか気になったので記事にした。


それにしても、前記事のStringIteratorはいかにも私がJAVAをやってますって言わんばかりのソースだね。