0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Java基礎文法Part2

Posted at

今回はJavaの配列について記事にしたいと思います。
配列は、同じ種類のデータをまとめて一つに管理できる「箱」のようなものです。
たとえば、クラスのみんなのテスト点数をプログラムで扱いたいとします。一人一人の点数を別々の変数に入れると、とても大変です。

int score1 = 80;
int score2 = 90;
int score3 = 75;

// 生徒が30人いたら、30個の変数が必要になります!
これでは効率が悪いので、配列を使って点数をまとめて管理します。

配列のイメージ
配列は、一列に並んだロッカーや引き出しのようなものです。
各引き出し(要素)には、データが一つずつ入っています。
配列全体に名前をつけて、引き出しごとに番号(インデックス)でアクセスします。
図で表すと:

配列 scores
+-----+-----+-----+-----+-----+
| 80  | 90  | 75  | 85  | 95  |
+-----+-----+-----+-----+-----+
  [0]   [1]   [2]   [3]   [4]

scores[0] は最初の要素(80)を指します。

配列の使い方

  1. 配列の宣言と作成
    まず、配列を宣言して作成します。
// 型[] 配列名 = new 型[要素数];
int[] scores = new int[5];

int[] は「整数型の配列」を意味します。
scores は配列の名前です。

new int[5] 5つの整数を入れることができる配列を作成します
  1. 配列に値を入れる
    各要素に値を代入します。
// 配列名[インデックス] = 値;
scores[0] = 80; // 1番目の要素に80を入れる
scores[1] = 90; // 2番目の要素に90を入れる
scores[2] = 75;
scores[3] = 85;
scores[4] = 95;

インデックスは0から始まるので、注意してください。

  1. 配列から値を取り出す
    配列の要素を使って計算や表示ができます。
System.out.println(scores[2]); // 出力:75
  1. 配列の長さを取得する
    配列の要素数(長さ)を知りたいときは、配列名.length を使います。
int length = scores.length; // lengthは5になります

配列を使った例題
例題:5人の生徒のテスト点数の平均を計算するプログラム

public class Main {
    public static void main(String[] args) {
        // 1. 配列の宣言と作成
        int[] scores = new int[5];
        
        // 2. 配列に値を入れる
        scores[0] = 80;
        scores[1] = 90;
        scores[2] = 75;
        scores[3] = 85;
        scores[4] = 95;
        
        // 合計点を計算する変数を用意
        int sum = 0;
        
        // 3. 配列から値を取り出して合計を計算
        for(int i = 0; i < scores.length; i++) {
            sum += scores[i]; // sum = sum + scores[i];
        }
        
        // 平均点を計算
        double average = (double)sum / scores.length;
        
        // 結果を表示
        System.out.println("合計点:" + sum);
        System.out.println("平均点:" + average);
    }
}

実行結果:

合計点425
平均点85.0

forループを使って、配列の全ての要素を順番に取り出しています。
sum += scores[i]; は、合計を計算するためのコードです。
ポイントまとめ
配列は同じ型のデータをまとめて管理できる。
インデックスは0から始まるので、最初の要素は配列名[0]です。
配列の長さは配列名.lengthで取得できます。
forループと組み合わせて使うと、全ての要素を簡単に操作できます。
配列の便利な初期化方法
配列を作成すると同時に値を入れることもできます。

int[] scores = {80, 90, 75, 85, 95};

これで、5つの要素を持つ配列scoresが作成され、それぞれに値が代入されます。
配列の応用:二次元配列
配列の中に配列を持つ、二次元配列もあります。

例:クラスの成績表(生徒5人、科目3つ)

int[][] grades = {
    {80, 85, 90}, // 1人目の点数(国語、数学、英語)
    {75, 80, 85}, // 2人目
    {90, 95, 100}, // 3人目
    {65, 70, 75}, // 4人目
    {85, 80, 90}  // 5人目
};

grades[0][1] は、1人目の2番目の科目の点数(85)を指します。
grades.length は生徒の人数(5)を示します。
grades[0].length は科目の数(3)を示します。
二次元配列を使った例題
例題:各生徒の合計点と平均点を計算する

public class Main {
    public static void main(String[] args) {
        int[][] grades = {
            {80, 85, 90}, // 1人目
            {75, 80, 85}, // 2人目
            {90, 95, 100}, // 3人目
            {65, 70, 75}, // 4人目
            {85, 80, 90}  // 5人目
        };
        
        for(int i = 0; i < grades.length; i++) {
            int sum = 0;
            for(int j = 0; j < grades[i].length; j++) {
                sum += grades[i][j];
            }
            double average = (double)sum / grades[i].length;
            System.out.println((i+1) + "人目の合計点:" + sum + "、平均点:" + average);
        }
    }
}

実行結果:

1人目の合計点255平均点85.0
2人目の合計点240平均点80.0
3人目の合計点285平均点95.0
4人目の合計点210平均点70.0
5人目の合計点255平均点85.0

配列を使うときの注意点
配列のインデックスは0から始まることを忘れないでください。

配列の範囲外(存在しない要素)にアクセスするとエラーになります。

int[] scores = new int[5];
scores[5] = 100; // エラー!インデックスは0~4まで

配列のサイズは一度決めたら変更できません。

まとめ
配列は、同じ種類のデータをまとめて扱うための便利な仕組みです。
大量のデータを効率的に管理・操作することができます。
ループと組み合わせることで、全ての要素に対して処理を行うことが簡単になります。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?