当前位置: 首页 > 面试题库 >

无法在Java中创建LinkedList数组…?

卜和悌
2023-03-14
问题内容

我正在研究一个稀疏矩阵类,该类需要使用数组LinkedList来存储矩阵的值。数组的每个元素(即每个LinkedList)代表矩阵的一行。并且,LinkedList数组中的每个元素代表一列和存储的值。

在我的课程中,我将数组声明为:

private LinkedList<IntegerNode>[] myMatrix;

并且,在的构造函数中SparseMatrix,我尝试定义:

myMatrix = new LinkedList<IntegerNode>[numRows];

我最终得到的错误是

无法创建的通用数组LinkedList<IntegerNode>。

因此,我有两个问题:

  1. 我做错了什么
  2. 如果无法创建数组,为什么在数组的声明中可以接受该类型?

IntegerNode是我创建的课程。而且,我所有的类文件都打包在一起。


问题答案:

你不能使用通用数组创建。这是Java泛型的缺陷/功能。

没有警告的方式是:

  1. 使用列表列表而不是列表数组:
List< List<IntegerNode>> nodeLists = new LinkedList< List< IntegerNode >>();
  1. 声明列表数组的特殊类:
class IntegerNodeList {
    private final List< IntegerNode > nodes;
}


 类似资料:
  • 好吧,所以我试图在Java创建自己的LinkedList类(带有泛型类型),但是遇到了一些问题。我创建了一个LinkedListNode类,它基本上设置并获取next和right指针以及节点的键。我的LinkedList类代码发布在下面,如果您编译并运行,您会发现它没有按照应该的方式设置列表。此刻,我正在尝试在节点x之后插入节点y,但我的打印输出看起来像: 键:5-上一键:6-下一键:6键:6-上

  • 我使用Tomcat 8.0.53和Java8来开发普通的Spring应用程序,但当我运行服务器时,实际上我会遇到这种类型的错误 操作系统:macOS RAM:8GB

  • 我尝试了多种方法来创建这个zip文件在Java /Groovy.我尝试的前几个方法,来自各种博客/帖子,导致无法打开损坏的zip文件。所以,我尝试了这个(下图),看起来相当有希望。系统报告传递到FileInputStream的有效文件路径。我不确定是否是FQ路径被传递到ZipOutputStream导致了这个问题。不管怎样,下面是代码,它导致创建小(188kb)zip文件(没有条目)。有什么建议吗

  • 我试着使用设置并查看了所有选项,但“OK”按钮无法让我完成这个过程。知道吗? 更新:确定按钮现在启用,但填写完所有内容后,我按下确定,我在控制台收到一个不同的错误: [2013-07-22 11:04:45-SDK Manager]错误:null] 访问问题:Android SDK AVD错误:null

  • 考虑: 这就是您创建一个5行10列的二维数组的方式吗? 我在网上看到了这段代码,但语法没有意义。

  • 问题内容: 我正在为学校进度设计基于文本的冒险游戏。我将每个“级别”设置为一个类,并将每个可探索区域(节点)设置为相应类中的一个方法。 困扰我的是从一个节点移动到另一个节点的代码。由于每个节点最多连接四个其他节点,因此我必须在每种方法中重复一个极为相似的代码块。 我更愿意做的是在每个节点的开头包含一个方法数组,如下所示: 然后将该数组发送到通用方法,然后将播放器发送到正确的节点: 我简化了代码,但