004 配列(配列変数間での代入) 029 解答例

public class ArrayCopyExample {
    public static void main(String[] args) {
        // source 配列の宣言と初期化
        int[] source = new int[7];

        // source 配列に1から7までの整数を代入
        for (int i = 0; i < source.length; i++) {
            source[i] = i + 1;
        }

        // destination 配列の宣言と初期化(要素数は source と同じ)
        int[] destination = new int[source.length];

        // source 配列の内容を destination にコピーし、要素を2倍してコピー
        for (int i = 0; i < source.length; i++) {
            destination[i] = source[i] * 2;
        }

        // source 配列の内容を表示
        System.out.print("source: ");
        for (int num : source) {
            System.out.print(num + " ");
        }

        // destination 配列の内容を表示
        System.out.print("\ndestination: ");
        for (int num : destination) {
            System.out.print(num + " ");
        }
    }
}

このプログラムでは、source 配列に1から7までの整数を代入し、destination 配列にコピーして、各要素を2倍してコピーしています。最終的に、両方の配列の内容を表示しています。

計算をしながら配列の要素に代入

配列に要素を代入する際に、その値を計算した結果に基づいて代入することができます。この方法は、特定の計算や処理を行い、その結果を配列の要素に格納する際に使用されます。以下に、この手法の一般的な手順を示します:

配列の宣言と初期化:
まず、計算結果を格納するための配列を宣言し、必要に応じて初期化します。要素数は計算結果の数に合わせて設定します。

// 配列の宣言と初期化
dataType[] resultArray = new dataType[arraySize];

ここで、dataType は配列内に格納されるデータの型を示し、arraySize は要素の数を示します。

計算と代入:
計算を実行し、その結果を直接配列の要素に代入します。

for (int i = 0; i < arraySize; i++) {
    // 計算を実行し、その結果を配列に代入
    resultArray[i] = i * 2;  // iを2倍して配列の要素に代入
}

ここで、i はループのインデックスであり、iの値を2倍する計算をおこない、その結果を配列の要素に代入しています。

繰り返し:
必要な計算や処理を繰り返し行い、その都度計算結果を配列に格納します。このプロセスを繰り返すことで、多くの計算結果を効率的に管理できます。

この手法は、計算結果を直接配列に格納するため、コードがシンプルで効率的です。例えば、センサーデータの処理、統計情報の収集、フィボナッチ数列の生成など、多くのアプリケーションで使用されます。計算結果を計算中に配列に代入することで、後で必要な情報を簡単に取得できるようになります。

「0004 配列」問題集リスト