Javaに関する様々な情報をご紹介します。

1while、do while、for

Javaに関する様々な情報をご紹介します。

while、do while、for

Javaでのwhile文、do while文、for文について説明します。

while文

while文は以下の枠内のフォーマットで構成されています。while文は繰り返しの処理を行いたい時に使用します。まず初めに式の値を判別します。式はブール型(true、false)の値を返すものでないといけません。式の値がtrueの場合、文を実行します。文を実行した後、再び式の判別を行い、値がtrueである場合再び文の実行を行います。式の値がtrueである限り、文の実行を繰り返します。式が初めから falseを返す場合、whileブロック中の文は一度も実行されません。

while (式) {
  文(複数可)
}

【例1】while文を使用した例です。

public class ExControl1 {
    public static void main(String[] args) {
        int i = 0;   //(1)
        while (i <= 5) {   //(2)
            System.out.println("iは" + i + "です。");   //(3)
            i++;   //(4)
        }
    }
}

解説1

  1. (1)変数iを宣言し、値0を代入します。
  2. (2)変数iが5以下の間、whileブロック内の文を実行します。
  3. (3)現在の変数iの値を表示します。
  4. (4)変数iの値を1増加させます。変数iが6になると式の判別時5以下を満たさなくなり、falseを返すため、while文は終了します。

実行結果1

D:\JAVA>javac ExControl1.java

D:\JAVA>java ExControl1
iは0です。
iは1です。
iは2です。
iは3です。
iは4です。
iは5です。

D:\JAVA>

do while文

do while文は以下の枠内のフォーマットで構成されています。do while文は必ず一度でも文を実行させたい場合に使用します。まず初めに文の実行を行います。その後、式の判別を行います。式はブール型(true、 false)を返すものでないといけません。式の結果がtrueであれば再び文の実行を行います。以後式がtrueである限り文の実行を繰り返します。式がfalseになると繰り返し処理を終了します。式が初めからfalseを返す場合でも必ず一度は文が実行されます。

do {
  文(複数可)
} while (式);

【例2】do while文を使用した例です。

public class ExControl2 {
    public static void main(String[] args) {
        int i = 6;   //(1)
        do {
            System.out.println("iは" + i + "です。");   //(2)
            i++;   //(3)
        } while (i <= 5);   //(4)
    }
}

解説2

  1. (1)変数iを宣言し、値6を代入します。
  2. (2)do while文はまず初めに文の実行が行われるため、printlnメソッドにて変数iの表示を行います。
  3. (3)変数iの値を1増加させます。
  4. (4)変数iの値が7で5以下の条件を満たさずfalseを返すため、do while文を終了します。

実行結果2

D:\JAVA>javac ExControl2.java

D:\JAVA>java ExControl2
iは6です。

D:\JAVA>

for文

for文は以下の枠内のフォーマットで構成されています。for文も繰り返し処理の一種です。まず繰り返し処理を行う前に初期化を実行します。初期化では一般的に繰り返し処理の判断に使われるローカル変数の宣言(int i = 0;)などが行われます。その後条件を判断しtrueであれば文を実行します。条件にはブール型(true、false)の値を返す式が記載されます。文を実行した後、更新に記載されている処理を実行します。再び条件を判断しtrueであれば文の実行を行います。条件がtrueである限り繰り返し処理を行います。

初期化、条件、更新はそれぞれ削除することが可能です。すべてを削除したfor(;;)は無限ループを意味します。

for (初期化; 条件; 更新) {
  文(複数可)
}

【例3】for文を使用した例です。

public class ExControl3 {
    public static void main(String[] args) {
        //(1)初期値i=0、iが5以下の間forループ内を実行
        for(int i = 0; i <= 5; i++) {
            System.out.println("iは" + i + "です。");
        }
    }
}

解説3

  1. (1)初期値で変数iを宣言、0を代入し、forループの条件判断として使用します。文が実行されるたびに、更新で設定したi++に元づき変数iを1増加させ、iが6となった段階でforループを終了します。

実行結果3

D:\JAVA>javac ExControl3.java

D:\JAVA>java ExControl3
iは0です。
iは1です。
iは2です。
iは3です。
iは4です。
iは5です。

D:\JAVA>

1while、do while、for