Java arrayList与Vector不兼容

Java arrayList与Vector不兼容,java,arraylist,vector,collections,Java,Arraylist,Vector,Collections,我有如下代码 private Vector<Vector<Object>> barCode; private boolean isBarCode(String temp) { for (Vector<Object> link : barCode) { if (link.get(0).toString().equals(temp)) { return true; }

我有如下代码

private Vector<Vector<Object>> barCode;

private boolean isBarCode(String temp) {
        for (Vector<Object> link : barCode) {
            if (link.get(0).toString().equals(temp)) {
                return true;
            }
        }
        return false;
    }
专用矢量条码;
专用布尔isBarCode(字符串温度){
用于(矢量链接:条形码){
if(link.get(0).toString()等于(temp)){
返回true;
}
}
返回false;
}
我正在犯错误

原因:java.lang.ClassCastException:java.util.ArrayList与java.util.Vector不兼容

在for循环线


有什么输入吗?

您的
条码
包含
数组列表
,而不是
向量

有人放错了容器。在您的示例中,没有足够的数据来找出位置和原因

您可以将(矢量链接:条码)
替换为(ArrayList链接:条码)
,并将
矢量条码
替换为
矢量条码
,但我强烈建议您在找到
条码
包含
ArayList
的原因之前不要这样做

这是因为在代码中的某个地方使用了原始泛型(
Vector
没有泛型参数)。

私有列表条形码;
专用布尔isBarCode(字符串温度){
用于(列表链接:条形码){
if(link.get(0).toString()等于(temp)){
返回true;
}
}
返回false;
}

Vector
ArrayList
都实现了
列表
接口,因此这允许其中一个(以及任何其他实现)的实例。我还建议在其余代码中创建
ArrayList
实例时进行标准化,除非您确定需要的功能。

错误不在您发布的代码中。请附上一份。
private List<List<Object>> barCode;

private boolean isBarCode(String temp) {
    for (List<Object> link : barCode) {
        if (link.get(0).toString().equals(temp)) {
            return true;
        }
    }
    return false;
}