for ループ (foreach 反復構文) に自動的に置換できる for ループを報告します。
例:
for (Iterator<String> iterator = list.iterator(); iterator.hasNext(); ) {
String item = iterator.next();
System.out.println(item);
}
クイックフィックス適用後:
for (String item : list) {
System.out.println(item);
}
list.get(index) の呼び出しを含むループを検出するには、「インデックス付きの 'java.util.List' ループを報告する」オプションを使用します。
このようなループは多くの場合、list.remove(index) の呼び出しなどでプロセスの基になるリストを変更しない限り、拡張 for ループに置換できます。
後者の場合、拡張 for ループが ConcurrentModificationException をスローする可能性があります。
また、場合によっては list.get(index) ループの処理が若干高速になります。
型パラメーターのないコレクションを無視するには、「型指定されていないコレクションに対して反復を報告しない」オプションを使用します。
これにより、java.lang.Object 型の拡張 for ループ変数の作成と、ループ変数が使用されるキャストの挿入を防ぐことがます。