0

int[] を行列に変換するにはどうすればよいですか?

6x6 行列を作成したいとしましょう。36 要素の int[] 配列があります。したがって、00 エントリは配列の 0 番目の要素、01: 1 要素、02: 2 番目の要素などです。

4

2 に答える 2

4

どうですか:

int[] ints = new int[36];
// fill with values
int[][] matrix = new int[6][6];
for (int i = 0; i < ints.length; i++) {
    matrix[i / 6][i % 6] = ints[i];
}

これが機能する理由を理解しやすくするために、ループ内に次を追加します。

System.out.println("i = " + i + "; i / 6 = " + (i / 6) + "; i % 6 = " + (i % 6) + ";");
于 2012-12-06T22:27:16.890 に答える
1
for(int i = 0; i < 6; i++)
  for(int j = 0; j < 6; j++)
    matrix[i][j] = vector[i * 6 + j];
于 2012-12-06T22:38:17.237 に答える