JAVA二维数组如何使用arraycopy?

来源:百度知道 编辑:UC知道 时间:2024/05/01 11:39:02
int a[][] = {{1,2},{3,4,5,6},{7,8,9},{0}};
int ak[][] = new int[a.length][];
如果我System.arraycopy(a,0,ak,0,a.length);会把二维数组a的所有元素都复制过去,如果我把参数换成System.arraycopy(a,3,ak,3,3);之类就会ArrayIndexOutOfBoundsException,如果参数换成System.arraycopy(a,1,ak,1,3);他也会全部复制过去。
请问arraycopy这个函数对于二维数组的使用应该是怎样的?谢谢。
那能够执行的二维数组的复制是怎么回事呢?不是很懂

arraycopy
public static void arraycopy(Object src,
int srcPos,
Object dest,
int destPos,
int length)
src - 源数组。
srcPos - 源数组中的起始位置。
dest - 目标数组。
destPos - 目标数据中的起始位置。
length - 要复制的数组元素的数量。

只能复制一维数组