Java | 配列の全部(または一部)を同じ値で一気に埋める

Java Java
スポンサーリンク

では、Java の配列を まとめて同じ値で埋める方法 (Arrays.fill) を、プログラミング初心者向けにかみ砕いて、例題つきで詳しく解説します。


1. 配列って何?

配列は、同じ型のデータをまとめて管理できる箱のようなものです。

int[] scores = new int[5];  // 5個の整数を入れられる配列
Java
  • scores[0]scores[1]、…、scores[4] がそれぞれ箱になります。
  • 配列を作った直後は、数値型なら 0、文字列型なら null が入っています。

2. すべて同じ値にしたいとき

例えば、5人のテストの点数を 最初は全員 10 点 にしたいとします。

普通に書くと…

scores[0] = 10;
scores[1] = 10;
scores[2] = 10;
scores[3] = 10;
scores[4] = 10;
Java

ちょっと面倒ですよね。

ここで使えるのが Arrays.fill です。


3. Arrays.fill の使い方

import java.util.Arrays; // Arrays クラスを使うために必要

int[] scores = new int[5];
Arrays.fill(scores, 10);  // 配列の全要素を 10 にする
Java
  • 第一引数:配列名 (scores)
  • 第二引数:すべての要素に入れたい値 (10)

これで、配列 scores の中身はすべて 10 になります。


確認してみよう

for (int i = 0; i < scores.length; i++) {
    System.out.println("scores[" + i + "] = " + scores[i]);
}
Java

出力:

scores[0] = 10
scores[1] = 10
scores[2] = 10
scores[3] = 10
scores[4] = 10

4. 配列の一部だけ埋めることもできる

全体じゃなくて、部分だけ値を変えたい場合もあります。

int[] numbers = new int[10];
Arrays.fill(numbers, 2, 5, 99); // 2番目から4番目までを 99 に
Java
  • 2 は開始インデックス(この位置から)
  • 5 は終了インデックス(この位置 手前まで
  • 99 は代入する値

結果:

numbers[0] = 0
numbers[1] = 0
numbers[2] = 99
numbers[3] = 99
numbers[4] = 99
numbers[5] = 0
...

5. 文字列や boolean でも使える

String[] names = new String[3];
Arrays.fill(names, "なし");

boolean[] flags = new boolean[4];
Arrays.fill(flags, true);
Java
  • names"なし", "なし", "なし"
  • flagstrue, true, true, true

6. まとめ

  • 配列は同じ型のデータをまとめて管理できる箱。
  • Arrays.fill を使うと 全部の要素を一気に同じ値で埋められる
  • 便利な理由:for 文で一つずつ書く必要がなくなる → コードが短く、分かりやすくなる。
  • 一部だけ埋めることもできる(Arrays.fill(配列, 開始, 終了, 値))。

練習問題

  1. 5個の整数配列を作って、すべて 7 で埋めてみよう。
  2. 10個の配列を作り、インデックス 3~7 だけ 100 に変更して出力してみよう。
  3. 文字列配列に "未設定" をすべて代入してみよう。
タイトルとURLをコピーしました