
【6日でできるJava入門】制御文② 条件文とboolean型
ここでは、Javaプログラミングにおける「条件文」と「boolean型」について解説します。プログラムにおいて、値や変数を比較して処理を分岐させることは非常に重要です。条件文とboolean型を理解し使いこなすことで、より柔軟で意図通りに動くプログラムを作ることができます。ここでは、条件文の書き方・比較演算子・boolean型・論理演算子など、プログラムの分岐の基礎を体系的に学びます。

1.条件文と比較演算子
1.1. 比較演算子の種類
| 演算子 | 意味 | 使用例 |
|---|---|---|
| == | 左右が等しい | x == y |
| != | 左右が等しくない | x != y |
| > | 左が右より大きい | x > y |
| < | 左が右より小さい | x < y |
| >= | 左が右以上 | x >= y |
| <= | 左が右以下 | x <= y |
注意:「=」は代入演算子、「==」が等価比較なので混同に注意!
1.2. 条件式の「真」と「偽」
- 比較演算子で比較すると、**真(true)または偽(false)**の結果が得られます。
- Javaではこの値を扱うために「boolean型」が用意されています。
サンプル
int score = 85;
boolean isPass = score >= 70;
System.out.println("合格判定: " + isPass);実行結果
合格判定: true2.boolean型と論理演算
2.1. boolean型の特徴と宣言
| 型名 | 値 | 用途例 |
|---|---|---|
| boolean | true, false(真・偽) | 条件分岐や判定処理など |
宣言例
boolean flag;
flag = true;
boolean isEmpty = false;2.2. 比較演算の結果をboolean変数に代入
int x = 10;
boolean greaterThanFive = x > 5; // true
boolean lessThanZero = x < 0; // false
System.out.println(greaterThanFive); // true
System.out.println(lessThanZero); // false2.3. 論理演算子(複数条件の組み合わせ)
| 論理演算子 | 説明 | 使い方例 |
|---|---|---|
| && | 論理積(AND) | x > 0 && x < 10 |
| || | 論理和(OR) | x < 0 || x >= 10 |
| x | y | x && y | x || y |
|---|---|---|---|
| true | true | true | true |
| true | false | false | true |
| false | true | false | true |
| false | false | false | false |
例:複数条件の判定
int age = 25;
boolean isYouth = age >= 20 && age < 30;
System.out.println("20代ですか?: " + isYouth);実行結果
20代ですか?: true3.条件文とboolean型の応用
3.1. 無限ループ(条件が常にtrueの場合)
while (true) {
// ずっと繰り返す処理
break; // 実際は脱出条件が必要
}3.2. 条件がfalseの場合(1回も実行されない)
while (false) {
// この中身は実行されません
}3.3. 優先順位に注意
演算子には優先順位があり、複雑な式では括弧()を使って意図した順で評価しましょう。
int a = 3, b = 4, c = 5;
boolean result = a + b > c && c < 10;
System.out.println(result); // true4.演習プログラム
例1:年齢判定プログラム
ファイル名: lesson09_1.java
public class lesson09_1 {
public static void main(String[] args) {
int age = 20;
boolean isAdult = age >= 18;
System.out.println("年齢:" + age);
System.out.println("成人ですか?:" + isAdult);
}
}実行結果
年齢:20
成人ですか?:true例2:点数による合格判定プログラム
ファイル名: lesson09_2.java
public class lesson09_2 {
public static void main(String[] args) {
int score = 68;
boolean isPassed = score >= 60;
System.out.println("点数:" + score);
System.out.println("合格ですか?:" + isPassed);
}
}実行結果
点数:68
合格ですか?:true例3:数値の範囲チェック(AND・ORの活用)
ファイル名: lesson09_3.java
public class lesson09_3 {
public static void main(String[] args) {
int n = 7;
boolean inRange = n > 0 && n < 10;
boolean outOfRange = n < 0 || n > 10;
System.out.println("値:" + n);
System.out.println("0より大きく10未満ですか?:" + inRange);
System.out.println("0未満または10より大きいですか?:" + outOfRange);
}
}実行結果
値:7
0より大きく10未満ですか?:true
0未満または10より大きいですか?:false例4:偶数判定プログラム
ファイル名: lesson09_4.java
public class lesson09_4 {
public static void main(String[] args) {
int number = 15;
boolean isEven = number % 2 == 0;
System.out.println("値:" + number);
System.out.println("偶数ですか?:" + isEven);
}
}実行結果
値:15
偶数ですか?:false例5:論理演算の応用(AND・OR)
public class lesson09_5 {
public static void main(String[] args) {
boolean sunny = true;
boolean holiday = false;
boolean canPicnic = sunny && holiday;
boolean stayHome = !sunny || !holiday;
System.out.println("ピクニックに行ける?:" + canPicnic);
System.out.println("家で過ごす?:" + stayHome);
}
}実行結果
ピクニックに行ける?:false
家で過ごす?:trueまとめ
このように、条件文とboolean型は分岐や判定、繰り返し処理の要となる重要な基礎知識です。比較演算子・論理演算子・boolean型の活用を身につけて、より柔軟で正確なプログラムを書けるようになりましょう。
