Java | 配列のコピー

Java Java
スポンサーリンク

では、プログラミング初心者向けに 配列コピーの練習になるミニアプリ を作ってみましょう。
テーマは「成績表の点数をコピーして、コピーした配列で計算(平均・補正)をする」です。


Java ミニアプリ例:成績表コピーと計算

import java.util.Arrays;
import java.util.Scanner;

public class GradeCopyApp {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        // 1️⃣ 元の成績配列を作成(ユーザー入力)
        int[] originalScores = new int[5]; // 5人分の点数
        System.out.println("=== 成績入力 ===");
        for (int i = 0; i < originalScores.length; i++) {
            System.out.print((i + 1) + "人目の点数: ");
            originalScores[i] = sc.nextInt();
        }

        // 2️⃣ 配列をコピーして計算用に使う
        int[] calcScores = Arrays.copyOf(originalScores, originalScores.length);

        // 3️⃣ 計算用配列を補正(例:5点加点)
        for (int i = 0; i < calcScores.length; i++) {
            calcScores[i] += 5;
        }

        // 4️⃣ 元の配列とコピー配列を表示
        System.out.println("\n=== 元の成績 ===");
        System.out.println(Arrays.toString(originalScores));

        System.out.println("=== 補正後の成績(コピー配列) ===");
        System.out.println(Arrays.toString(calcScores));

        // 5️⃣ コピー配列の平均点を計算
        int sum = 0;
        for (int score : calcScores) {
            sum += score;
        }
        double average = (double) sum / calcScores.length;
        System.out.println("補正後の平均点: " + average);
    }
}
Java

このミニアプリで学べること

  1. 配列コピーの使い方int[] calcScores = Arrays.copyOf(originalScores, originalScores.length);
    • 元の点数配列を壊さずに、別の配列で計算できる。
  2. 元の配列とコピー配列の独立性
    • calcScores を変更しても originalScores はそのまま。
  3. 配列操作の基本
    • ループで要素を操作する方法
    • 配列の合計・平均の計算
  4. Scanner を使ったユーザー入力
    • 実務風の入力方法を体験

実行例

=== 成績入力 ===
1人目の点数: 70
2人目の点数: 85
3人目の点数: 60
4人目の点数: 90
5人目の点数: 75

=== 元の成績 ===
[70, 85, 60, 90, 75]
=== 補正後の成績(コピー配列) ===
[75, 90, 65, 95, 80]
補正後の平均点: 81.0

ポイント

  • 元配列を壊さずコピーしてから計算することで、オリジナルのデータを残すことができます。
  • 配列コピーは、成績計算だけでなく「元データを残して加工する」場面でよく使うテクニックです。
Java
スポンサーリンク
シェアする
@lifehackerをフォローする
スポンサーリンク
タイトルとURLをコピーしました