可能性の重複:
Why don't Generics support primitive types?なぜ我々は一般的なTとしてダブルを使用することはできません?
なぜ代わりに、我々はダブルを使用する必要があり、T
としてdouble
を使用することはできませんか?リストを使用している場合
我々はコンパイルエラーになります
可能性の重複:
Why don't Generics support primitive types?なぜ我々は一般的なTとしてダブルを使用することはできません?
なぜ代わりに、我々はダブルを使用する必要があり、T
としてdouble
を使用することはできませんか?リストを使用している場合
我々はコンパイルエラーになります
ジェネリック型パラメータはjava.lang.Object
のサブクラスでなければなりません。
ダブルがオブジェクトではありません、あなたはダブル
double
を使用することができますジェネリック型はjava.lang.Object
を必要とし、Double
Tが非プリミティブデータ型でなければなりませんオブジェクト
ある一方で、ジャワのprimitive data type
です。一見したところ不便かもしれませんが、オートボクシングがあります。つまり、次のようなことがあります。
List<Double> list = new ArrayList<Double>();
double x = 5.0d;
list.add(x);
double y = list.get(0);
@ LiuwkCnの答えと同様に、これは質問に全く答えません。それは、 "何"(OPがすでに理解しているように見える)であり、 "なぜ"ではないかを述べている。 -1 –
+1です。また、http://download.oracle.com/javase/tutorial/java/generics/gentypes.htmlを参照してください(プリミティブを使用することはできません)。 –
@レイチェル私は、一般的な型はプリミティブではないことをOPが理解していると思います。質問は:_whyではない?_ –
これはどのように答えですか?それは理由を説明するものではなく、OPはすでに「ダブル」を使用しなければならないことをすでに知っていた。 –