Java の while 文による繰り返し

Java の while を使った繰り返し

制御文を使うとプログラムの実行順序を変えることができます。while 文は Java の制御文のひとつです。 特に繰り返し処理を行うために使います。

while 文は指定した条件式が true である間、処理を繰り返すために利用できます。

while 文を使った繰り返しは先に条件式を評価する場合と、条件式をコードを実行してから評価する場合 (do-while 文 といいます) の二つに分けられます。

Java の while 文

while に条件式を指定し、その条件式が true と評価される限り、while に続くコードブロックが実行されます。

繰り返し処理になるので、while ループなどともいいます。

while ( 条件式 ) {
  // 条件式が真 (true) である限りここが繰り返し実行される
}

次の例では、変数 i を用意し、 i が 3 より小さい間、 i の値を出力します。

出力したあと、 i の値を 1 だけ増やします。

public class TestApp {
  public static void main(String[] args) {
    int i = 0;
    while (i < 3) {
      System.out.println(i);
      i++;
    }
  }
}

実行すると次のように出力されます。

0
1
2

はじめに i を 0 にセットします。 while の条件式では ( i < 3 ) を指定しているので、 条件式は true と評価されるので、{ と } で囲まれたコードブロックが実行されます。

ここで i の値をプリントしているので、 012 と出力されています。

この中では、i の値を出力してから i を1だけ増やして (インクリメントして) います。

インクリメントした後に再度条件式を評価して、再度 true と評価されればまた同じコードブロックが実行されます。

上記のコードでは 3 回コードブロックが実行されて、i の値が 3 となったところで、条件式 ( i は 3 より小さい) が false となるために、 while ループの実行がおわり、プログラムが終了しています。

条件式が正しく設定されないと、延々とコード繰り返してしまい、いつまで経ってもプログラムが終了しないということになってしまいます。 ループを行う場合には、ループの終了条件に十分注意しましょう。

Java の do-while 式

while 文の別のパターンとして、do-while 文というものがあります。

do {
  // ここを実行してから繰り返し条件式を評価
} while( 条件式 );

while 文と似ているのですが、異なる点はコードブロックが最低1回は実行されてから、条件式を評価するという点がことなります。

public class TestApp {
  public static void main(String[] args) {
    int i = 0;
    do {
      System.out.println(i);
      i++;
    } while (i < 3);
  }
}

実行例は次のとおりです。

0
1
2

こちらのループは、何か処理を実行して処理の結果を評価し、成功するまで繰り返す、といった処理の流れを作るのに向いています。

以上で、Java の制御文の while と do-while という繰り返しについて説明しました。

ここまでお読みいただき、誠にありがとうございます。SNS 等でこの記事をシェアしていただけますと、大変励みになります。どうぞよろしくお願いします。

© 2024 Java 入門