📝 はじめに
Javaを学び始めると必ず出てくるのが 配列。
さらに、配列を扱うときに必ず使う for文には
- 通常のfor文
- 拡張for文(for-each文)
この記事では、
配列の基本から、2種類のfor文の違いまで
初心者向けにやさしく解説します。
Ⅰ 配列とは?(初心者向けのイメージ)
配列とは 同じ型のデータをまとめて管理する箱の並び です。
- 1つの変数名で複数の値を扱える
- 要素には 0番から順番に番号(インデックス)が付く
- Javaの配列は 長さが固定(途中で増減しない・というかできない)
int[] scores = {80, 90, 70};+-----------+-----------+-----------+ | scores[0] | scores[1] | scores[2] | | 80 | 90 | 70 | +-----------+-----------+-----------+2. 配列の作り方
2-1. 初期値をまとめて書く
int[] scores = {80, 90, 70};2-2. 長さだけ決めて後で代入する
int[] scores = new int[3]; scores[0] = 80; scores[1] = 90; scores[2] = 70;3. 配列の要素を取り出す(インデックス)
System.out.println(scores[0]); // 80 System.out.println(scores[1]); // 90 System.out.println(scores[2]); // 70Ⅱ. 配列をループで回す方法
配列を扱うときに必ず使うのが for文。
Javaには2種類あります。- 通常のfor文(indexを使う)
- 拡張for文(indexを使わず、要素を順番に取り出す)
1. 通常のfor文(indexを使う)
書き方
for (int i = 0; i < scores.length; i++) { System.out.println(scores[i]); }特徴
- インデックス(i)を使う
- 配列の長さは scores.length
- 要素の位置を指定できる
- 条件を変えれば「逆順」や「飛ばし」もできる
こんなときに便利
- 何番目の要素か知りたいとき
- 逆順に回したいとき
- 偶数番目だけ取り出したいとき
2. 拡張for文(for-each文)
書き方
for (int s : scores) { System.out.println(s); }特徴
- インデックスを使わず、要素を順番に取り出す
- 書き方がシンプルで読みやすい
- 配列の全要素を順番に処理したいときに最適
こんなときに便利
- 全部の要素を順番に処理したいだけのとき
- インデックスが不要なとき
- コードを短くしたいとき
3. 通常for文 vs 拡張for文の違いまとめ
項目 通常のfor文 拡張for文 インデックス 使う 使わない 書き方 少し長い シンプル 逆順・飛ばし できる できない 要素の変更 可能 基本的に不可(値を変更しても配列に反映されない) 向いている用途 位置を使う処理 全要素を順番に処理