Java入門

【Java入門】繰り返し(for文)

2021年4月14日

はじめに

前回の記事では、Javaの条件分岐(if文)について紹介しました。

本記事では、Javaの繰り返し処理(for文)について紹介します。

for文を使った繰り返し処理

for文は、繰り返し処理を行うための制御文です。for文では、カウンタを用意してその値によって何回繰り返すかを決めます。

以下は、for文の書き方の例です。

for文の例

上記例ではカウンタの初期値を「int i = 0;」、繰り返しを続けるための条件を「i < 10」、カウンタの増え方を「i++」と設定しています。

スポンサーリンク

for文の流れ(例)

  • カウンタiに初期値0を設定 (i = 0)
  • カウンタiは10未満なので、for文内の処理を実行する
  • 「i++」なので、iに1を加算する (i = 1)
  • カウンタiは10未満なので、for文内の処理を実行する
  • (省略)※3と4の繰り返し
  • 「i++」なので、iに1を加算する (i = 9)
  • カウンタiは10未満なので、for文内の処理を実行する
  • 「i++」なので、iに1を加算する (i = 10)
  • カウンタiは10未満ではないので、for文の繰り返し処理を終了する

for文の使用例

それでは、実際にプログラムでfor文を使用した繰り返し処理の例を紹介します。

次の例では、金額の配列「moneys」の要素数分for文で繰り返し、配列「moneys」に格納されている値の合計額を求めています。

[for文の使用例]

public class ForSample {

    public static void main(String[] args) {
        int[] moneys = {100,300,500,1000}; // 金額の配列
        int total = 0; // 合計額
        
        for(int i = 0; i < moneys.length; i++) {
            System.out.println(i + "番目の値:" + moneys[i]);
            
            // 金額を合算する
            total += moneys[i];
        }
        
        System.out.println("合計金額:" + total);
    }
}

[実行結果]

0番目の値:100
1番目の値:300
2番目の値:500
3番目の値:1000
合計金額:1900

拡張for文を使った繰り返し処理

拡張for文とは、配列やコレクションの要素の数だけ繰り返しを行う制御文です。

通常のfor文のようにカウンタの初期値や繰り返しを続けるための条件、カウンタの増え方(減り方)を設定する必要はありません。

以下は、拡張for文の書き方の例です。

拡張for文の例

配列「array」から要素を一つ取り出し変数「i」に格納し、配列の要素が無くなるまで繰り返し処理を実行する流れです。

拡張for文の流れ(例)

  • 配列「array」から0番目の要素「1」を取り出し変数iに代入する
  • 拡張for文内の処理を実行する
  • 配列「array」から1番目の要素「2」を取り出し変数iに代入する
  • 拡張for文内の処理を実行する
  • 配列「array」の要素が無くなったので、拡張for文の繰り返し処理を終了する

スポンサーリンク

拡張for文の使用例

それでは、実際にプログラムで拡張for文を使用した繰り返し処理の例を紹介します。

次の例では、通常のfor文の例と同様に金額の配列「moneys」の要素数分for文で繰り返し、配列「moneys」に格納されている値の合計額を求めています。

[拡張for文の使用例]

public class ExpansionForSample {

    public static void main(String[] args) {
        int[] moneys = {100,300,500,1000}; // 金額の配列
        int total = 0; // 合計額
        
        for(int money : moneys) {
            System.out.println("配列の値:" + money);
            
            // 金額を合算する
            total += money;
        }
        
        System.out.println("合計金額:" + total);
    }
}

[実行結果]

配列の値:100
配列の値:300
配列の値:500
配列の値:1000
合計金額:1900
配列やコレクションの要素の数だけ繰り返す場合は、拡張for文を使った方が簡単です。

終わりに

本記事では、for文を使った繰り返し処理について紹介しました。

次回の記事では、while文を使った繰り返し処理について紹介します。

helpful