我正在尝试以下方法来实现带有泛型的单独链式哈希表:
// hash table class
protected List<HashEntry<K, V>>[] bucket;
this.bucket = (List<HashEntry<K, V>>[]) new Object[capacity];(*)
(...)
// main program
HashTableMapSC<Integer, String> hashSC = new HashTableMapSC<Integer,String>(7);
我收到以下运行时错误:
[Ltablashash.HashTableMapSC$HashEntry; cannot be cast to [Ljava.util.List;
位于 (*)
HashEntry只是一个包含键值对的简单私有类.
我知道这会起作用:
protected List<List<HashEntry<K,V>>> bucket;
但是当我被要求这样做时,我想知道是否可能.
谢谢
最佳答案 如果你肯定需要一系列泛型(通常不鼓励),请使用
this.bucket = new List[capacity];
你会有一个rawtypes警告.