给定两个不规则的数组:a和b,其中a + b总是具有相同的行数:
int[][] a = { {1,2}, {4,5,6} };
int[][] b = { {7}, {8,9,0} };
我要怎样操作一个新的锯齿数组 c 才能返回以下结果:{ {1,2,7}, {4,5,6,8,9,0} }
?
这是目前我已经有的代码:
int[][] c = null;
for(int i = 0; i<a.length; i++){
c = new int[a.length][a[i].length + b[i].length];
}
//rest of my code for assigning the values into the appropriate position works.
正如大家所看到的,问题出在我进行了深拷贝,在for循环的第二次迭代中,将所有行都设置为当前迭代步骤中当前行的长度。