Java の配列を初期化する方法(配列を作るいろいろな方法)
新人
「Java で配列を作るにはどうしたらいいですか?」
先輩
「Java では、配列を使うと複数のデータをまとめて管理できるよ。まずは基本的な作り方から説明しよう!」
1. Java の配列とは?(基本的な説明)
Java の配列とは、同じ種類のデータを一つの変数で管理できる仕組みです。例えば、数値のリストや文字列のリストをまとめて扱うときに使います。
配列は作成時に大きさ(要素数)を決める必要があります。また、配列の各要素にはインデックス(番号)が割り振られ、0 から始まる のが特徴です。
2. 配列を作る基本的な方法(配列の宣言と作成)
Java で配列を作るには、以下の 2 つの手順が必要です。
- ① 配列の宣言(どの型の配列か指定する)
- ② 配列の作成(要素数を決める)
配列の宣言と作成の基本
Java で配列を作るには、以下のように記述します。
public class ArrayInitialization {
public static void main(String[] args) {
// 配列の宣言
int[] numbers;
// 配列の作成(5つの要素を持つ配列)
numbers = new int[5];
System.out.println("配列が作成されました!");
}
}
配列が作成されました!
このように、型[] 配列名; で配列を宣言し、new 型[サイズ] で配列を作成します。
配列を宣言しながら作成する
上の例では「宣言」と「作成」を分けましたが、1行でまとめて書くこともできます。
public class ArrayInitialization {
public static void main(String[] args) {
// 1行で配列を宣言と作成
int[] numbers = new int[5];
System.out.println("配列の長さ: " + numbers.length);
}
}
配列の長さ: 5
このように書くと、宣言と作成をまとめて行うことができます。
3. 配列の初期化方法(値を入れて作成する)
Java では、配列を作成する際に、最初から値を入れることができます。これは「初期化」と呼ばれ、配列を作成すると同時にデータを格納できます。
配列を初期化する方法
以下のように、波かっこ {} を使って値を設定できます。
public class ArrayInitialization {
public static void main(String[] args) {
// 配列の初期化
int[] numbers = {10, 20, 30, 40, 50};
System.out.println("配列の要素:");
for (int i = 0; i < numbers.length; i++) {
System.out.println("要素 " + i + " : " + numbers[i]);
}
}
}
配列の要素:
要素 0 : 10
要素 1 : 20
要素 2 : 30
要素 3 : 40
要素 4 : 50
この方法では、配列の宣言と同時にデータを設定できるため、簡潔に書けます。
4. 配列の長さを指定して作る方法(要素を後から代入)
配列を作成するときに、最初は値を入れずにサイズだけ指定し、後から値を設定 することもできます。
配列の長さを指定して後から代入する方法
public class ArrayAssignment {
public static void main(String[] args) {
// 配列の作成(サイズ指定)
String[] fruits = new String[3];
// 各要素に値を代入
fruits[0] = "りんご";
fruits[1] = "みかん";
fruits[2] = "ぶどう";
System.out.println("配列の内容:");
for (int i = 0; i < fruits.length; i++) {
System.out.println("要素 " + i + " : " + fruits[i]);
}
}
}
配列の内容:
要素 0 : りんご
要素 1 : みかん
要素 2 : ぶどう
この方法では、配列の要素を後から設定するため、データを動的に変更したい場合に便利です。
5. 配列を一括で初期化する方法(簡単な書き方)
Java では、宣言と作成を同時に行う方法 もあります。特に、メソッド内で配列を作成するときによく使われます。
一括で初期化する方法
public class ArrayQuickInitialization {
public static void main(String[] args) {
// 一括で配列を作成
double[] prices = {100.5, 200.0, 350.75};
System.out.println("商品の価格:");
for (double price : prices) {
System.out.println("価格: " + price + " 円");
}
}
}
商品の価格:
価格: 100.5 円
価格: 200.0 円
価格: 350.75 円
このように、{} を使ってシンプルに配列を作ることができます。
6. 配列の要素を変更する方法(値の上書き)
Java の配列は、一度作成した後でも要素の値を変更できます。配列のインデックスを使って、新しい値を代入するだけで上書きできます。
配列の値を変更するサンプルコード
public class ArrayUpdate {
public static void main(String[] args) {
// 配列の作成と初期化
String[] colors = {"赤", "青", "緑"};
// 配列の内容を表示
System.out.println("変更前:");
for (int i = 0; i < colors.length; i++) {
System.out.println("要素 " + i + " : " + colors[i]);
}
// 値の上書き
colors[1] = "黄色";
// 変更後の配列を表示
System.out.println("変更後:");
for (int i = 0; i < colors.length; i++) {
System.out.println("要素 " + i + " : " + colors[i]);
}
}
}
変更前:
要素 0 : 赤
要素 1 : 青
要素 2 : 緑
変更後:
要素 0 : 赤
要素 1 : 黄色
要素 2 : 緑
このように、インデックスを指定して新しい値を代入すると、元の値が上書きされます。
7. 配列を別の配列にコピーする方法
Java では、既存の配列を別の配列にコピーする方法がいくつかあります。直接代入すると、参照がコピーされるため注意が必要です。
配列をコピーする基本的な方法
以下のコードでは、for 文を使って、一つずつ配列の要素をコピーしています。
public class ArrayCopy {
public static void main(String[] args) {
// 元の配列
int[] original = {1, 2, 3, 4, 5};
// コピー先の配列(同じ長さで作成)
int[] copy = new int[original.length];
// 配列をコピー
for (int i = 0; i < original.length; i++) {
copy[i] = original[i];
}
// コピー後の配列を表示
System.out.println("コピー後の配列:");
for (int num : copy) {
System.out.println(num);
}
}
}
コピー後の配列:
1
2
3
4
5
System.arraycopy を使ってコピーする
System.arraycopy() を使うと、効率的に配列をコピーできます。
public class ArrayCopySystem {
public static void main(String[] args) {
// 元の配列
int[] original = {10, 20, 30, 40, 50};
// コピー先の配列
int[] copy = new int[original.length];
// System.arraycopy を使ってコピー
System.arraycopy(original, 0, copy, 0, original.length);
// 結果を表示
System.out.println("System.arraycopy を使ったコピー:");
for (int num : copy) {
System.out.println(num);
}
}
}
System.arraycopy を使ったコピー:
10
20
30
40
50
System.arraycopy() を使うと、一括で高速にコピーできます。
8. 練習問題:「配列の初期化と操作を学ぼう」
最後に、配列の初期化や要素の変更、コピーの方法を確認するための練習問題を出題します。
問題1: 配列の初期化と表示
以下の配列を作成し、すべての要素を表示してください。
- 整数型の配列
numbersを作成 - 5つの値(10, 20, 30, 40, 50)を代入
- for 文を使ってすべての要素を表示
問題2: 配列の要素の変更
次の配列を作成し、2番目の要素(インデックス1)を変更してください。
- 文字列型の配列
fruitsを作成 - 「りんご」「みかん」「ぶどう」を格納
- 「みかん」を「バナナ」に変更
- 変更後の配列を表示
問題3: 配列のコピー
以下の条件で配列のコピーを行いましょう。
- 整数型の配列
originalを作成し、5つの値を格納 System.arraycopy()を使って別の配列にコピー- コピーした配列を
for文で表示
この問題を解くことで、配列の基本操作をしっかり身につけることができます!