整件事是我有一个二维数组:
int[][] Key = {{1,0,1,0,1,0},{1,0,1,0,1,0},{1,0,1,0,1,0},{1,0,1,0,1,0},
{1,0,1,0,1,0},{1,0,1,0,1,0},{1,0,1,0,1,0},{1,0,1,0,1,0}};
将这个 2D 数组拆分为 8*1D 数组(每个块 1 个)需要什么。所以我定义了 8 个新的一维数组以及一个数组列表来放置所有这些数组:
ArrayList<int[]> B_Blocks = new ArrayList<int[]>();
int[] B0 = new int[Key[0].length];
int[] B1 = new int[Key[0].length];
int[] B2 = new int[Key[0].length];
int[] B3 = new int[Key[0].length];
int[] B4 = new int[Key[0].length];
int[] B5 = new int[Key[0].length];
int[] B6 = new int[Key[0].length];
int[] B7 = new int[Key[0].length];
我需要的是某种方法来索引数组列表中的数组,例如我想将第一行值添加Key
到第一个数组中Arraylist
PS arraylist 的全部意义在于稍后通过 forloops 获得更多操作的访问权限。任何帮助谢谢
我尝试使用以下嵌套的 for 循环来添加值:
for (int i =0;i<Key.length;i++) {
for (int j =0;j<Key[0].length;j++) {
B_Blocks.get(i)[j] = Key[i][j] ;
}
}
它运行但当我输出时值不一样:
for (int i =0;i<rightblock.length;i++) {
for (int j =0;j<rightblockExp[0].length;j++) {
System.out.print(B_Blocks.get(i)[j]);
} System.out.print("\n");
}