004 配列(多次元配列の要素数) 045 解答例

public class Main {
    public static void main(String[] args) {
        int[][] grid = new int[4][4];
        int value = 1;

        for (int row = 0; row < grid.length; row++) {
            for (int col = 0; col < grid[row].length; col++) {
                grid[row][col] = value;
                value++;
            }
        }

        // プリントして確認
        for (int row = 0; row < grid.length; row++) {
            for (int col = 0; col < grid[row].length; col++) {
                System.out.print(grid[row][col] + " ");
            }
            System.out.println(); // 改行
        }
    }
}

このプログラムでは、2つの入れ子のループを使用して、grid 配列内の各要素に1から16までの値を順番に代入しています。そして、二重のループを使用して配列の内容を表示しています。

このコードを実行すると、grid 配列には次のように値が代入され、それが表示されます:

1 2 3 4 
5 6 7 8 
9 10 11 12 
13 14 15 16 

多次元配列の要素数の利用

多次元配列の要素数を取得してループ処理に利用することは、配列内のデータを操作するために非常に役立ちます。具体的な例として、2次元配列を使用したループ処理を説明します。

2次元配列の各次元に対して要素数を取得し、これを使ってループ処理を行うことができます。以下は、2次元配列を使って行ごとの合計を計算する例です:

public class Main {
    public static void main(String[] args) {
        int[][] matrix = {
            {1, 2, 3},
            {4, 5, 6},
            {7, 8, 9}
        };

        int rowCount = matrix.length; // 行数
        int columnCount = matrix[0].length; // 列数

        // 各行の合計を格納する配列
        int[] rowSums = new int[rowCount];

        // 行ごとの合計を計算
        for (int i = 0; i < rowCount; i++) {
            int rowSum = 0;
            for (int j = 0; j < columnCount; j++) {
                rowSum += matrix[i][j];
            }
            rowSums[i] = rowSum;
        }

        // 結果を出力
        for (int i = 0; i < rowCount; i++) {
            System.out.println("Row " + i + " sum: " + rowSums[i]);
        }
    }
}

この例では、matrix.length で行数を取得し、matrix[0].length で列数を取得しています。その後、2つのループを使用して行ごとの合計を計算し、別の配列 rowSums に格納します。最終的に、各行の合計を出力します。

多次元配列の要素数を取得してループ処理に活用することで、より効率的で正確なデータ処理が可能になります。

「0004 配列」問題集リスト