1. ホーム

[解決済み】Javaのfor-eachループで反復カウンタにアクセスする方法はありますか?

2022-03-29 12:01:28

質問

Java の for-each ループで、次のような方法はありますか?

for(String s : stringArray) {
  doSomethingWith(s);
}

を使えば、ループが既に処理された回数を知ることができますか?

昔からよく知られている for(int i=0; i < boundary; i++) - ループの構成は

int i = 0;
for(String s : stringArray) {
  doSomethingWith(s);
  i++;
}

このようなカウンターを持つ唯一の方法は、for-eachループの中で利用できることでしょうか?

解決方法は?

いいえ、しかし、あなた自身のカウンターを提供することができます。

その理由は、for-eachループが内部で を持つ カウンタです。 イテラブル インタフェース,すなわち Iterator をループさせるために、quot;collection" - これは全くコレクションではないかもしれませんし、実際にはインデックスに全く基づかないもの(リンクリストなど)かもしれません。