class 协会<K,V> 通用列表数组

Array of List of class Association<K,V> Generic

我在 Whosebug 中查看了所有过去的问题,但没有找到适合我的问题的答案。 我想创建一个 class 关联列表数组,但执行后,我在行中有一个类似这样的异常:

private static final int SIZE=99999; 
private List<Association <K,V>> [] hashtab; 
hashtab = (List<Association    <K,V>>[]) new Object [SIZE];

Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.util.List; at com.code.classes.TableHachage.(TableHachage.java:20) at com.test.TestHash.main(TestHash.java:11)

我该如何解决?

注意:这是一个学术问题,所以我们不能直接使用HashTable,我们必须通过链接使用冲突解决,并为此使用LinkedList

为什么不只是:hashtab = (List<Association<K,V>>[]) new ArrayList[SIZE];

其实你不了解OOP的基本原理:class Object的对象不能转换为任何其他class,因为Object是超class 对于所有其他人。

不确定你为什么要试镜?那是你的问题。

尝试只做一个新的数组列表: 列表 listOfAssociations = new ArrayList();

让我知道你想用 "hashTable" 做什么。因为您可以使用 HashMap 或其他一些对象

(我对你想要达到的目标有点困惑)

使用其中之一

hashtab = new ArrayList[SIZE];

hashtab = (List<Association <K,V>>[])new ArrayList<?>[SIZE];