我具有深复制正方形板的功能:
cg$ind_its cg$scm_inventory_trans.cg$ind_type;
当我使用此功能并对cg$rec_itl cg$scm_inventory_trans_dtls.cg$row_type;
进行更改时,它会对我传入的原始cg$ind_itl cg$scm_inventory_trans_dtls.cg$ind_type;
进行更改。我读到l_its_id scm_inventory_trans.id%type;
返回的克隆数组不受影响通过更改原始内容。但这与上面的示例完全相反。源数组中的内存引用仅按Does Arrays.copyOf produce a shallow or a deep copy?
什么是进行真正的深层复制以使对begin
中的对象所做的更改不更改case :APEX$ROW_STATUS
中的对象的最佳方法?
答案 0 :(得分:0)
尝试使用类似的东西
public Square[][] copy_array(Square[][] board) {
Square[][] nv = new Square[8][8];
for (int i = 0; i < nv.length; i++)
nv[i] = board[i].clone();
return nv;
}
我没有测试,但是克隆制作了一个深拷贝