gpt4 book ai didi

java - 在 Java 中警告克隆 ArrayList

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:11:16 30 4
gpt4 key购买 nike

public void addProductList(ArrayList<ViewOrderProduct> globalOrderProductList) {

this.productOrderList = (ArrayList<ViewOrderProduct>)globalOrderProductList.clone();
}

这给了我警告:

Type safety: Unchecked cast from Object to ArrayList

我知道我可以简单地通过添加 @SuppressWarnings("unchecked") 来解决问题。

但我想了解这个问题。如果我添加 suppressWarnings,我可以确定一切顺利吗?此警告是否有其他解决方案?

最佳答案

clone() 默认返回 Object,克隆 ArrayList 的正确方法是使用适当的构造函数:

this.productOrderList =  new ArrayList<ViewOrderProduct>(globalOrderProductList);

编辑:首选方法是使用适当的构造函数,并且这两种方法无论如何都只返回一个浅拷贝。

编辑:据我所知,没有其他方法可以使用不带 SuppressWarningclone() 删除警告。

关于java - 在 Java 中警告克隆 ArrayList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20147420/

30 4 0