• 締切済み

ArrayListを利用する問題

問題 1.ArrayListのオブジェクトを生成する。 2.「何回入力しますか?」と出力し、標準入力をおこなう。 3.2で入力した回数分、以下の処理を繰り返す。 「n個目の値を入力してください」と出力し、標準入力を行う。(n=ループ回数) 入力された値をArrayListへ格納する。 4.ArrayListのサイズ分、以下の処理を繰り返す。 ArrayListより値を取得する。 取得した値を出力する。 結果 何回入力しますか? 3 1個目の値を入力してください。 hoge 2個目の値を入力してください。 poyo 3個目の値を入力してください。 hoo hoge poyo hoo 自分で書いたプログラム 1 import java.util.ArrayList; 2 import java.io.*; 3 4 class ArrayList2{ 5 public static void main(String[] args) throws IOException{ 6 7 ArrayList list = new ArrayList(); 8 list.add(n); 9 10 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 11 12 System.out.println("何回入力しますか?"); 13 14 String str = br.readLine(); 15 16 int num = Integer.parseInt(str); 17 18 for(int i = n ; i < num; i++){ 19 System.out.println("n個目の値を入力してください。"); 20 21 String str1 = br.readLine(); 22 23 } 24 } 25 } どうもうまくいきませんので教えて下さい。

みんなの回答

回答No.2

こんな感じでしょうか。 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; public class Test2{ public static void main(String[] args) throws IOException{ System.out.println("何回入力しますか?"); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int num = Integer.parseInt(br.readLine()); //入力処理 ArrayList list = new ArrayList(); for(int i = 0 ; i < num; i++){ System.out.println("n個目の値を入力してください。"); BufferedReader br2 = new BufferedReader(new InputStreamReader(System.in)); list.add(br2.readLine()); } //出力処理 for(int j=0 ; j < num ; j++){ System.out.println(list.get(j)); } } }

saitamaj
質問者

お礼

ありがとうございます。大変参考になりました。

回答No.1

明らかにコンパイルが通らないソースなのですが・・・ さて、見た感じ・・・ >入力された値をArrayListへ格納する。 >4.ArrayListのサイズ分、以下の処理を繰り返す。 >ArrayListより値を取得する。 >取得した値を出力する。 の部分が丸々抜けてますね。 入力値の格納はループのところでやって、ループ終了後にArrayListの中身を出力すればよいかと思います。

saitamaj
質問者

補足

どうもそこらへんのことがよくわかりません。 すいませんが参考例としてお願いできませんでしょうか?

関連するQ&A