有效地向各种大小的二维数组添加索引



如果有一组不同维度的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循环强制执行的。

相关内容

  • 没有找到相关文章

最新更新