如果有一组不同维度的2d数组,则说:
float[][] P = new float[2][3];
float[][] B = new float[2][2];
float[][] A = new float[32][2];
float[] E = new float[2];
当前没有值。
是否可以通过循环遍历最大集合维(在本例中)的索引值来向数组的每个索引添加值:
for (int i=0; i<32; i++){
for (int j=0; j<3; j++){
//doSomething to (P[i][j]) if P has this index
//doSomething to (B[i][j]) if B has this index
//doSomething to (A[i][j]) if A has this index
//doSomething to (E[i][j]) if E has this index
}
}
否则,必须有四个独立的循环!
谢谢。
for (int i=0; i<32; i++){
for (int j=0; j<3; j++){
if(i < 2)
doSomething(P[i][j]);
if(i < 2 && j < 2)
doSomething(B[i][j]);
if(j < 2)
doSomething(A[i][j]);
if(i == 0 && j < 2)
doSomething(E[i][j]);
}
}
对于E
,您需要i == 0
部分,因为您只想修改一次,而不是32次。注意,只有B
需要两个条件,因为其他条件是由for
循环强制执行的。