为啥输出的全是20,21,20,21,20,21,看不出哪里覆盖了啥,我准备输入的是0,1,10,11,20,21
int[][] a=new int[3][2];
int[] b=new int[2];
for (int i=0;i<3;i++){
for (int j=0;j<2;j++){
b[j]=i*10+j;
}
a[i]=b;
}
就是准备通过b给a赋值的
你每次都在更新这个b数组里的值,自然a里面就都是[20, 21](因为最后b会变成[20, 21])了,你的a里面其实是这样的[b, b, b],而你想要的结果是这样的[b1, b2, b3],因此把b放第一个for循环里。
你在哪儿输入的?
你输出的语句在哪呢
参考如下:
int[][] a = new int[3][2];
for(int i=0;i<3;i++){
for(int j = 0;j<2;j++){
a[i][j] = i*10 +j;
}
}