- ベストアンサー
Javaでリストにオブジェクトを入れる方法とは?
- javaでリストにオブジェクトを入れる方法について知りたいです。
- リストにオブジェクトを入れる際に表示される「GetUser@19e0bfd」というメッセージに対処する方法を教えてください。
- リストにオブジェクトを入れる場合の正しいコーディング方法について教えてください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
System.out.println(gu); のようなコードだと、仰るような出力になると思います。 ですが、listにオブジェクトはしっかり格納されていますので、心配いりません。 GetUser gu2 = (GetUser) list.get(0); System.out.println(gu2.getId()); System.out.println(gu2.getPass()); System.out.println(gu2.getName()); のようにすれば、それぞれの値が出力されると思います。 なおジェネリクスを使えば、上記1行目のキャストが不要になります。 List<GetUser> list = new ArrayList<GetUser>(); list.add(gu); GetUser gu2 = list.get(0); // キャストは不要。
その他の回答 (2)
>実行するとコンソールに「GetUser@19e0bfd」のようなものが出てきます。 それが正常な動作です。それはインスタンスの参照を示す値です。 GetUserには、テキストとして値を取り出すための処理が書いてありますか? ないなら、オブジェクトの内容をテキストとして取り出すことはできません。Javaでは(というか、どんな言語でも)、プログラマが書いてないことはできません。 そのGetUserクラスの中に、toStringメソッドを追加して下さい。こんな感じで。 public String toString(){ return ……出力したい値をテキストにまとめる…… } これで、returnした内容が出力されるようになるはずです。
お礼
ご返答ありがとうございます。
- lefty17
- ベストアンサー率21% (46/214)
ジェネリクス ArrayList<GetUser> list = new ArrayList<GetUser>()
お礼
ご返答ありがとうございます。 こちらをどうしたらよろしいでしょうか。
お礼
ご返答ありがとうございます。 まさに欲しい回答でした。