Java 速習チュートリアル

Java のelse文

1. else ステートメント (The else Statement)

else ステートメントを使用すると、if ステートメント内の条件が false(偽)だった場合に実行されるコードブロックを定義できます。

1.1 構文 (Syntax)

if (条件) {
  // 条件が true の場合に実行されるコードブロック
} else {
  // 条件が false の場合に実行されるコードブロック
}

実生活に例えて考えてみましょう。「もし(if)雨が降ったら、傘を持っていく。そうでなければ(else)、傘を持たずに外出する」というロジックです。

1.2 雨天判定のコード例

boolean isRaining = false;

if (isRaining) {
  System.out.println("傘を持ってきてください!");
} else {
  System.out.println("今日は雨が降っていません。傘は不要です!");
}

この例では isRainingfalse であるため、if ステートメント内の条件は満たされません。その結果、if ブロックはスキップされ、代わりに else ブロックが実行されて "今日は雨が降っていません。傘は不要です!" と出力されます。

2. 実用的なユースケース:時間による挨拶の切り替え

以下の例では、現在の時刻(time)に応じて「Good day」または「Good evening」を出力します。

2.1 挨拶プログラムのコード例

int time = 20;
if (time < 18) {
  System.out.println("Good day.");
} else {
  System.out.println("Good evening.");
}
// 出力: "Good evening."

例の解説

上記のコードでは、変数 time(20)は18よりも大きいため、条件式 time < 18false になります。このため、else ブロックへ移動し、画面に "Good evening" と出力されます。もし time が18未満であれば、プログラムは "Good day" と出力します。

3. 実装上の注意点 (Notes)

  • elseに条件式は不要: else 自体には括弧 () による条件の記述は行いません。if の条件が false になった際に自動的に実行されます。
  • セミコロンの位置に注意: if (条件) の直後にセミコロン ; を置かないでください。ステートメントがそこで早期終了してしまい、else が予期せぬ動作をしたり、コンパイルエラーの原因になります。

これで ifelse による基本的な2分岐が作れるようになりました。さらに多くの条件を扱いたい場合は、次に紹介する else if を活用することになります。