• 締切済み

Collectionクラスへ値を代入するときの型変換

J2SE 5.0でオートボクシング機能が追加されて云々かんぬん。。。そもそも、Collectionクラスへ値を代入するときには、なぜプリミティブ型からオブジェクト型へ変換しなければならないのでしょうか。データとして合わないから。くらいにしかわかっていません。Javaに詳しい方、宜しくお願い致します。

みんなの回答

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.2

#1 の通り, 「プリミティブ型を使うとそれぞれに応じて作らないとダメ」ってことでしょう. ま, しょせんは「なんちゃってオブジェクト指向」だから....

  • foxa-gogo
  • ベストアンサー率44% (38/85)
回答No.1

すべてのオブジェクトはobjectを継承しているので、内部的にobject型の変数が使えますが、プリミティブはそういうわけには行かず、それぞれのプリミティブ専用につくってあげなきゃいけなくなるんだと思います。 例えばHashSetとかの場合、内部的に.equalsとか.hashCode()とか呼ぶので、オブジェクト型の方が便利ですよね。 それぞれプリミティブ型用のコレクションも作ればいいのにという話はあるみたいですが、深読みしまくると、オブジェクト扱った方がパフォーマンス悪くなるので、Sunの高いサーバが売れるよね、という説もあります。

関連するQ&A