• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:arraylistについて)

ArrayListについて-ArrayListの勉強中

このQ&Aのポイント
  • ArrayListについて勉強しています。
  • ArrayListに自作クラスであるPersonを入れると、最後に入力した情報しか出力されません。
  • ロジックの中で、国語の平均点と各人の平均点を計算しています。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

省略して書いてないところが問題でしょう。たぶん。 こんな感じで書いてませんか? Person person; for(人数分ループ) {  /* ここで入力処理 */  person.setKo(国語の点);  person.setSu(数学の点);  person.setEi(英語の点);  persondata.add(person); } これだと同じ person を使いまわしてるのでダメです。 こんな風にしてみてください。 Person person = null; for(人数分ループ) {  person = new Person();  /* ここで入力処理 */  person.setKo(国語の点);  person.setSu(数学の点);  person.setEi(英語の点);  persondata.add(person); }

coroco
質問者

お礼

SpiralGalaxyさんありがとうございます。 ぴったりでました。 私の勉強不足ですね(>_<) ほんとうにありがとうございました!

coroco
質問者

補足

同じpersonを使いまわすと、 箱は一つだから、実際はその箱をみてるだけだから 、すべて最後に入力したものが出力される。 という考え方でよいでしょうか?

その他の回答 (1)

回答No.2

>箱は一つだから、実際はその箱をみてるだけだから >、すべて最後に入力したものが出力される。 >という考え方でよいでしょうか? はい。そういうことになります。 その都度 new して別の箱を作ってやる必要があると思います。 >ぴったりでました。 そうですか(^^)良かったです。

coroco
質問者

お礼

SpiralGalaxyさん!ほんとにありがとうございます。 私もここの質問に答えられるよう頑張ります! (まだしばらくは質問側でしょうが(^^ゞ) ありがとうございました~!!

関連するQ&A