目次
サンプル | 拡張for文とは |
配列の値を取得 / リストの値を取得 / マップのキーと値を取得 | |
ループを抜ける(break) | |
ループの先頭に戻る(continue) |
拡張for文とは
for( データ型 変数1 : 配列やコレクションの変数2 ){ 実行される処理(変数1を使用する) } |
カウントする変数を使わないため拡張for文と呼ばれます。
配列やコレクションの値をループで順番に取得します。
配列の値を取得
public class Test1 {
public static void main(String[] args) {
int array[] = {1, 2, 3};
for (int i: array){
System.out.println(i); // 1 2 3が出力される
}
}
}
3行目は、配列です。
リストの値を取得
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class Test1 {
public static void main(String[] args) {
List<String> c = new ArrayList<>(Arrays.asList("1","2","3"));
for (String a : c) {
System.out.println(a); // 1 2 3が出力される
}
}
}
7行目は、リストです。
マップのキーと値を取得
import java.util.HashMap;
import java.util.Map;
public class Test1 {
public static void main(String[] args) {
Map<String,String> color = new HashMap<>();
color.put("a", "red");
color.put("b", "yellow");
color.put("c", "blue");
for (Map.Entry<String, String> c1 : color.entrySet()) {
System.out.println(c1.getKey());// a b c
System.out.println(c1.getValue());// red yellow blue
}
}
}
6行目は、マップです。
12,13行目は、マップのキーと値を取得しています。
ループを抜ける(break)
breakでループを抜けるサンプルです。
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class Test1 {
public static void main(String[] args) {
List<String> c1 = new ArrayList<>(Arrays.asList("1","2","3"));
for (String a : c1) {
if (a == "2"){
break;
}
System.out.println(a); // 1が出力される
}
}
}
11行目は、breakで拡張for文のループから抜けます。
結果「1」のみ出力されます。
ループの先頭に戻る(continue)
continueでループの先頭に戻るサンプルです。
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class Test1 {
public static void main(String[] args) {
List<String> c1 = new ArrayList<>(Arrays.asList("1","2","3"));
for (String a : c1) {
if (a == "2"){
continue;
}
System.out.println(a); // 1 3が出力される
}
}
}
11行目は、continueで拡張for文の先頭(9行目)に戻ります。
結果「1」と「3」が出力されます。
関連の記事
Java for文 処理を繰り返す(break/continue)
Java 配列の仕組みと使い方のサンプル
Java 配列からリスト・セットを作成(addAll/asList)