導入
「スコアが60点以上」「雨が降っていて、かつ傘がない」のような条件を作るのが、比較演算子と論理演算子です。次章の if を使いこなす土台になります。
説明
まず比較演算子です。結果はすべて boolean(true/false)になります。
public class Main {
public static void main(String[] args) {
int score = 85;
System.out.println(score == 85); // 等しい → true
System.out.println(score != 100); // 等しくない → true
System.out.println(score >= 60); // 以上 → true
boolean isRainy = false;
boolean hasUmbrella = true;
System.out.println(isRainy && hasUmbrella); // かつ(AND)→ false
System.out.println(isRainy || hasUmbrella); // または(OR)→ true
System.out.println(!isRainy); // 否定(NOT)→ true
}
}
| 演算子 | 意味 |
|---|---|
== | 等しい |
!= | 等しくない |
> < | より大きい/より小さい |
>= <= | 以上/以下 |
&& | かつ(両方 true のときだけ true) |
|| | または(どちらかが true なら true) |
! | 否定(true と false を入れ替える) |
注意:== は「代入」の = と見た目が似ていますが、まったく別物です。if (x = 5) のように1つの = で書くとJavaではコンパイルエラーになるので、Javaでは事故りにくいですが、意味の違いはしっかり覚えておきましょう。
やってみよう
下のエディタで isRainy と hasUmbrella の組み合わせを変えて、&& と || の結果がどう変わるか確かめましょう。
演習
int age = 20; と boolean hasTicket = true; を用意し、「年齢が18以上、かつチケットを持っている」を boolean canEnter に計算して表示してください(結果は true)。
ヒント1を見る
boolean canEnter = (age >= 18) && hasTicket; のように書きます。
ヒント2を見る
System.out.println(canEnter); で表示します。