gpt4 book ai didi

java.util.ArrayList 无法转换为 java.util.Vector

转载 作者:行者123 更新时间:2023-12-01 18:31:23 30 4
gpt4 key购买 nike

我正在尝试使用以下代码使用对象列表列表中的数据填充tableModel readExcel.readSheet(0):

 TableModel tableModel = new DefaultTableModel(
new Vector<List<Object>>(readExcel.readSheet(0)
.subList(1, readExcel.readSheet(0).size())),
new Vector<Object>(readExcel.readSheet(0).get(0)));

但是我遇到了这个异常

java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.Vector  

我认为这是通过列表实例化一个 Vector,但是通过 javadoc的 Vector,我们可以看到可以使用集合来实例化 Vector。

我的代码片段有什么问题?

最佳答案

“cast”是程序员向编译器发出的指令;它说“理论上我在这里传递的类型可能不是所需类型的子类型,但我知道它将在运行时出现,所以不要给出错误说这是错误的类型。”

如果两种类型一起位于继承行中,即如果它们直接或间接地从另一个类型继承,则编译器只能将一种类型转换为另一种类型。

所以我猜测您有些复杂的构造函数和/或方法调用中的参数之一需要一个 ArrayList,并且您正在传递一个 Vector。如果构造函数或方法需要 ArrayList,则无法向其传递 Vector。

关于java.util.ArrayList 无法转换为 java.util.Vector,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24013404/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com