Javaで配列を使おうとしても「宣言?初期化?要素って何?」と頭が混乱していませんか?範囲外エラー、lengthの使い方、Listとの違いなど、つまずきポイントはたくさんあります。
私も最初はint[] nums = new int[5];
を見て「何これ?」と思いました。でも使い方がわかると、配列はとても強力な道具です。
この記事では、配列の宣言・アクセス・lengthの使い方、for文との組み合わせ、Listとの違いまで、初心者がつまずきやすいポイントをわかりやすく解説します。
「配列の基本が一気に理解できた」「もうエラーにおびえなくていい」と多くの読者に喜ばれている内容です。
例えば「5人の点数を保存して表示する」コード。配列を使えば1行で宣言して、for文で簡単に繰り返し処理できます。
この記事を読み終えるころには、あなたも配列の操作に自信が持てるようになります!
配列の基本的な宣言と初期化
配列って何?
- たくさんのデータをまとめて保存する箱(グループ)
- 例:5人分の点数を1つの変数にまとめて持つ
配列の作り方(宣言と初期化)
配列は「データ型[] 変数名 = new データ型[数];」で作ります。
この書き方でJavaに「この変数はたくさんの同じ型のデータを入れるんだよ」と伝えられます。
具体例を見てみましょう!
int[] scores = new int[5];
これで5つの数字を保存できる箱ができます。
配列の作り方は最初だけ難しく見えますが、実際は「箱の数を決めて作る」だけです。
配列の要素にアクセス・代入する方法
添字(インデックス)ってなに?
- 配列の中の1つ1つのデータには番号がついている(0からスタート)
- 例:
scores[0] = 90;
配列の中身には変数名[番号]
でアクセス・代入できます。
配列は順番にデータを並べた構造なので、番号で場所を指定できます。
具体例を見てみましょう!
scores[0] = 90; // 1番目に90を入れる
System.out.println(scores[0]); // 1番目を表示
注意点: 配列の外(存在しない番号)にアクセスするとエラーになります。
scores[5] = 100; // エラー!5番目は存在しない
配列は「0から始まる番号」を使って中身のデータを触ります。範囲に注意しましょう!
lengthで配列の大きさを確認しよう
lengthは“変数”で使う!
配列の要素数(いくつデータが入るか)は 配列変数.length
で確認できます。
Javaの配列には、サイズが固定で用意されています。その数を調べるにはlengthを使います。
具体例を見てみましょう!
int[] scores = new int[5];
System.out.println(scores.length); // 5 と出力される
注意: 文字列(String)の length()
はメソッドだけど、配列の length
は変数です(かっこがない)
配列の長さを知りたいときは「.length」でチェック!書き方に注意!
for文・拡張for文との使い分け
普通のfor文と配列
for (int i = 0; i < 配列.length; i++)
が基本形!
配列の各要素に番号でアクセスしながら繰り返し処理できるからです。
具体例を見てみましょう!
for (int i = 0; i < scores.length; i++) {
System.out.println(scores[i]);
}
番号と一緒に処理したい」なら普通のfor文が向いています。
拡張for文(for-each文)
for (型 変数 : 配列)
の形で、1つ1つ順番に取り出せます。
中身を順番に見るだけなら、番号なしでスッキリ書けます。
具体例を見てみましょう!
for (int score : scores) {
System.out.println(score);
}
番号が不要なときは「拡張for文」が便利です。
配列とList(ArrayList)の違い
それぞれの特徴
- 配列:サイズ固定、中身の型が同じ、速度が速い
- List:サイズが変えられる、柔軟だけど少し重い
「数が決まっている」「同じ型だけ」なら配列、「追加・削除したい」ならList!
配列は最初にサイズを決めるので軽量で早い。一方でListは便利だけど少し遅い。
// 配列
int[] numbers = new int[3];
// List
List<Integer> nums = new ArrayList<>();
使い分けが大事!データの性質や目的に応じて選ぼう!
まとめ:配列を使いこなそう!
この記事では、配列について以下のポイントを解説しました:
- 配列の基本(宣言・初期化)
- 要素へのアクセスとエラー防止
- 配列の長さ(length)の使い方
- for文や拡張for文との組み合わせ
- Listとの違いと使い分け
配列は最初こそ難しく感じるかもしれませんが、一度使い方が分かるととても強力な武器になります。
たくさん使って、自分のモノにしていきましょう!