我正在尝试将每个元素从一个ArrayList(av)复制到另一个(copia).问题在于它们是通过引用复制的,因此每当我对原始版本进行任何更改时,副本也会被修改.当然,这种行为不是必需的.我应该怎么写这个方法?
public void copiarArrayList(ArrayList<Articulo_Venta> copia, ArrayList<Articulo_Venta> av){
copia.clear();
for (int i = 0; i < av.size(); i++) {
copia.add(av.get(i));
}
}
Run Code Online (Sandbox Code Playgroud)
Articulo_Venta有以下几个字段:
int codigo;
String nombre;
float cantidad;
Run Code Online (Sandbox Code Playgroud)
PS:我也试过了下一个:
copia = new ArrayList<Articulo_Venta>(av);
Run Code Online (Sandbox Code Playgroud)
但它的元素仍然指向原始的ArrayList.