Java | 複数の入力をまとめて List に格納するサンプル

Java Java
スポンサーリンク

ここでは 複数の入力をまとめて List<Integer> に格納するサンプル を紹介します。
「Scannerで文字列として入力 → 数値に変換 → Listに追加」という流れです。

サンプルコード:複数の整数を入力してリストに格納

import java.util.*;

public class InputListSample {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        List<Integer> numbers = new ArrayList<>();

        System.out.println("整数をスペース区切りで入力してください(例: 10 20 30):");
        String line = sc.nextLine(); // 1行まとめて入力

        // 入力をスペースで分割
        String[] parts = line.split("\\s+");

        for (String p : parts) {
            try {
                int n = Integer.parseInt(p);   // 文字列 → int
                numbers.add(n);                // int → Integer(オートボクシング)
            } catch (NumberFormatException e) {
                System.out.println("数値に変換できません: " + p);
            }
        }

        System.out.println("入力された整数リスト: " + numbers);
    }
}
Java

✅ 実行例

整数をスペース区切りで入力してください(例: 10 20 30):
10 20 abc 30
数値に変換できません: abc
入力された整数リスト: [10, 20, 30]

🔄 応用パターン

1. 個別に複数回入力してリストに追加

import java.util.*;

public class InputLoopSample {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        List<Integer> numbers = new ArrayList<>();

        System.out.println("整数を入力してください(終了するには q を入力):");

        while (true) {
            String input = sc.nextLine();
            if (input.equalsIgnoreCase("q")) break; // qで終了

            try {
                int n = Integer.parseInt(input);
                numbers.add(n);
            } catch (NumberFormatException e) {
                System.out.println("数値を入力してください");
            }
        }

        System.out.println("入力された整数リスト: " + numbers);
    }
}
Java

ポイント

  • split() を使えば「1行で複数入力」を処理できる
  • whileループ を使えば「1つずつ入力してリストに追加」も可能
  • List<Integer> に入れるときは オートボクシング が働くので add(int) でOK

👉 これで「複数の入力をまとめてリストに格納する」方法が分かりました。

Java
スポンサーリンク
シェアする
@lifehackerをフォローする
スポンサーリンク
タイトルとURLをコピーしました