- ベストアンサー
JavaのGenericsについての質問
- JavaのGenericsにおいて、intとIntegerの扱いについて質問があります。
- 配列の場合は、Genericsでint[]を指定することはできるのでしょうか?
- 初心者のため、Genericsの仕組みについて教えていただきたいです。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
Javaの配列はオブジェクトです。(他のオブジェクトとは少し違いますが) なのでGenericsの場合も Vector<int[]> という指定であっています。 Genericsの仕組み自体は、コンパイルする時にチェックしているだけで、配列も一応オブジェクトなので、チェックのしくみは他のクラスが指定されている場合と同じです。
その他の回答 (2)
- erichgumma
- ベストアンサー率48% (13/27)
話の本筋からズレますが、Vectorが使われていたので、コメントします。 Bruce Eckel, "Thinking in Java (4th Edition)" (Prentice Hall, 2006) によると、 Vector should be avoided; it's only in the library for legacy code support.(p.870より) The only self-expanding sequence in Java1.0/1.1 was the Vector, so it saw a lot of use. ‥・Basically, you can think of it as an ArrrayList with long, awkward method names. In the revised Java container library, Vector was adapted so that it could work as a Collection and a List. This turns out to be a bit perverse, as it may confuse some people into thinking that Vector has gotten better, when it is actually included only to support older Java code. (p.894より) とあります。(要約すると、「Vectorの使用は避けよ」です。) ArrayList vs Vector http://www.velocityreviews.com/forums/t132806-arraylist-vs-vector.html も参考になります。
- Yanch
- ベストアンサー率50% (114/225)
Vector<Integer[]> は、コンパイルできるみたいですよ。 エラーにはなりませんよ。
お礼
確かに上手くいきました。私のタイプミスだったようです。ありがとうございました。
お礼
なるほど、そういうことだったのですね。ありがとうございました。