ホームページ >Java >&#&チュートリアル >Java の For-Each ループで反復カウンターにアクセスするにはどうすればよいですか?
Java の For-Each ループでの反復カウンターへのアクセス
Java の For-Each ループは、コレクションを反復するための簡潔な構文を提供します。ただし、明示的な反復カウンターがありません。この記事では、この情報を取得するための代替方法について説明します。
カウンター変数を使用したアプローチ
for-each ループには固有のカウンターがありませんが、次のように作成できます。あなた自身の。次の例を考えてみましょう。
<code class="java">int i = 0; for (String s : stringArray) { doSomethingWith(s); i++; }</code>
反復ごとにカウンタ変数をインクリメントすることで、ループ内の現在位置を追跡できます。
カウンタ変数アプローチの制限事項
代替アプローチ: 特殊なコレクションの使用
ArrayList や LinkedList などの一部の特殊な Java コレクションは、インデックス情報にアクセスするための追加メソッドを提供します。たとえば、ArrayList の forEachWithIndex() メソッドを使用すると、要素とそのインデックスの両方をパラメータとして受け取るラムダ式を渡すことができます。
<code class="java">ArrayList<String> stringArray = ...; stringArray.forEachWithIndex((i, s) -> doSomethingWith(i, s));</code>
結論
Java の for-each ループには組み込みの反復カウンターがありませんが、この情報を取得するための代替アプローチがあります。カウンター変数を使用すると柔軟なソリューションが提供されますが、特定のコレクションの種類には制限があります。インデックス アクセスが不可欠であり、コレクションがそれをサポートしている場合は、インデックス対応メソッドを備えた特殊なコレクションの使用を検討してください。
以上がJava の For-Each ループで反復カウンターにアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。