1
タイプ消去を適用した後、次のメソッドはどのように見えますか?Javaジェネリック - タイプ消去後のメソッド
static<T> void InsertAt0(List<T> mylist, T element) {
mylist.add(0, element);
}
T
Object
で置き換えられますか?またはタイプ消去はジェネリッククラスについてのみですか?
タイプ消去を適用した後、次のメソッドはどのように見えますか?Javaジェネリック - タイプ消去後のメソッド
static<T> void InsertAt0(List<T> mylist, T element) {
mylist.add(0, element);
}
T
Object
で置き換えられますか?またはタイプ消去はジェネリッククラスについてのみですか?
だけ<T>
秒のすべてを削除し、オブジェクトを任意のT
を置き換える:上記マイリスト
static void InsertAt0(List mylist, Object element) {
mylist.add(0, element);
}
注は、そのraw type同等に消去された:List<T>
はちょうどList
になりました。
あなたはT行きのワイルドカードを指定した場合は、そのバインドの代わりに、オブジェクトとT
に代わる、<T extends Number>
のように、そして:
static void InsertAt0(List mylist, Number element) {
^^^^^^
だけ追加するには、通知リストは消去され、一覧になっています。このリンクを見てくださいOP:https://en.wikipedia.org/wiki/Generics_in_Java#Problems_with_type_erasure –
angryip
@angryip私はそれをもっと明示します、ありがとう! – yshavit