Java の if 文による条件分岐

Java の if 文

if 文を使うと、自由に決めた条件によって、プログラム内の異なるコードブロックを実行できるようになります。

if 文では、条件が真 (true) と評価されるときに実行するコードブロック、偽 (false) のときに実行するコードブロックを指定することができます。そしてさらに、条件を複数追加することなどもできます。

具体例でみてみましょう。

  if (条件1) {
    // 条件1 が真 (true) のときにここが実行される
  } else {
    // 条件1 が偽 (false) のときにここが実行される
  }

else ブロックは任意です。else ブロックはなくても構いません。

次の例をみてください。

public class TestApp {
  public static void main(String[] args) {
    int X = 3;
    if (X > 10) {
      System.out.println("X is greater than 10.");
    } else {
      System.out.println("X is not greater than 10.");
    }
  }
}

X という int 型の変数があり、3 という値で初期化されています。4 行目では if 文を使って、それが 10 より大きいかどうかチェックしています。

実行結果は次のとおりです。

X is not greater than 10.

ここで X は 3 であり 10 より大きくないので、 X > 10 という条件式は false と評価されるために、else の方のコードブロックが実行されました。

Java の else if の使い方

上で見た if-else という他に、さらに条件分岐を加える場合には、if-if else-else という形で任意の数の条件を付け足すことが可能です。

  if (条件1) {
    // 条件1 が true のときにここが実行される
  } else if (条件2) {
    // 条件1 が false でありかつ 条件2 が true のときにここが実行される
  } else {
    // 条件1, 条件2 共に false の場合にここが実行される
  }

条件は複数あっても構いません。その場合は条件2 と同様に、条件3, 条件4, ... も同様に書きます。

public class TestApp {
  public static void main(String[] args) {
    int X = 3;
    if (X > 10) {
      System.out.println("X is greater than 10.");
    } else if (X > 0) {
      System.out.println("X is not greater than 10.");
      System.out.println("X is greater than 0.");
    } else {
      System.out.println("X is not greater than 10.");
    }
  }
}

実行結果は次の通りです。

X is not greater than 10.
X is greater than 0.

X は 3 であり、6行目の条件 X > 0 が true となるので、7行目と8行目が実行されました。

5行目や、10行目を含むコードブロックは実行されません。

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

© 2024 Java 入門