我正在嘗試將 1 x 9 陣列復制到 3 x 3 陣列中。我不確定為什么我的輸出只是在陣列中移動的數字 1。任何幫助將不勝感激。
public class arrayTest{
public static void main(String [] args)
{
int A [] = {1,2,3,4,5,6,7,8,9};
int B [][] = new int [3][3];
int i = 0, k, j;
for(k = 0; k < 3; k )
for(j = 0; j < 3; j ){
B[k][j] = A[i];
k ;
}
for(k = 0; k < 3; k )
{
for(j = 0; j< 3; j )
System.out.print(B[k][j] " ");
System.out.println();
}
}
}
uj5u.com熱心網友回復:
您需要將回圈計數器中的 2D 坐標轉換為 1D 陣列的索引:
int A [] = {1,2,3,4,5,6,7,8,9};
int B [][] = new int [3][3];
for (int k=0; k < 3; k ) {
for (int j=0; j < 3; j ) {
B[k][j] = A[k*3 j];
}
}
System.out.println(Arrays.deepToString(B));
// [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/425128.html
