Javaにおいて、標準入力から次のようなデータを受け取りたいのですが、作ったプログラムが意図した通りに受け取りません。
一体どのように書けば良いのでしょうか?
入力するデータ:
2
1 2
3 4
期待する出力:
1 2
3 4
入力するデータにおきましては、初めの数字がそのデータのセット数、そして次に続くのが出力したいデータになります。
出力したいデータは半角スペースで区切られています。
私が書いたコードは以下のようなコードです。
Java
1public static void main(String[] args) { 2 Scanner sc = new Scanner(System.in); 3 int N = sc.nextInt(); 4 for(int i = 0; i < N; i++) { 5 String s = sc.next(); 6 String[] array = s.split(" "); 7 for(int j =0; j < array.length; j++) { 8 System.out.println(array[j]); 9 } 10 } 11 }
デバッグして解析してみると、初めのデータのセット数においてはきちんと取れているようですが(つまり上記のコードのNにおいては問題ない)、続くコードの動きが意図したものと異なっています。
String s = sc.next();
で、s = "1 2"
となるのを期待していますが、実際にはs ="1"
となっています。調べてみたのですが、いまいちわかりませんでした。どのように書くべきなのでしょうか?
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/02/23 14:18 編集
退会済みユーザー
2017/02/23 15:01 編集
2017/02/23 15:08