Java 中的 LinkedList 数组:创建和陷阱
尝试在 Java 中创建 LinkedList 数组时,开发人员可能会遇到错误,指出不允许使用 LinkedList 的通用数组。出现此问题的原因是语言的类型擦除,解决方案涉及在创建过程中转换数组类型。
在提供的代码中,将数组 myMatrix 声明为 private LinkedList
要解决此问题,代码必须在创建过程中将数组类型强制转换为泛型类型。正确的语法是:
<code class="java">myMatrix = (LinkedList<IntegerNode>[]) new LinkedList<?>[numRows];</code>
通过转换为泛型类型(在本例中为 LinkedList>),编译器被告知该数组可以保存任何类型的 LinkedList。这使得实例化能够成功完成。
值得注意的是,Java 中的类型擦除意味着存储在数组中的特定类型的对象在运行时丢失。这意味着数组可以保存不同类型的 LinkedList,但它不会有类型信息来区分它们。
以上是如何在 Java 中创建 LinkedList 数组:克服类型擦除?的详细内容。更多信息请关注PHP中文网其他相关文章!