比較演算(関係演算)は被演算子の値の大小関係や同一性などを比較するための演算子です。
比較演算子も代入や算術演算子同様、種類やルールを覚える必要があります。
また、比較演算子の結果はboolean型となります。
ただし、文字列の比較には比較演算子は利用してはいけないので注意(別途紹介)が必要です。(コンパイルおよび実行時にもエラーになりません)
比較演算子の種類
比較演算子には「値の大小関係の比較」「値が同一であるかどうかの比較」をする演算子があります。
比較に当てはまる場合は「true(真)」となり、当てはまらない場合は「false(偽)」となります。
演算子 | 記述例と結果 | 補足説明(trueになる時の説明) | |
---|---|---|---|
> | 6 > 6 | false | a > bの時、aの値がbよりも大きい時「true」 |
>= | 6 >= 6 | true | a >= bの時、aの値がb以上の時「true」 |
< | 6 < 6 | false | a < bの時、aの値がbよりも小さい時「true」 |
<= | 6 <= 6 | true | a <= bの時、aの値がb以下の時「true」 |
== | 6 == 6 | true | a == bの時、aの値とbの値が同一の時「true」 |
!= | 6 != 6 | false | a != bの時、aの値とbの値が同一でない時「true」 |
※補足説明の逆はすべて「false」となります。
比較演算子の特徴
大小関係を比較する演算は数値(整数、小数)のデータに利用されます。
同一かどうかを比較する演算は数値、文字、真偽値だけでなく後述のインスタンスの比較やnull比較などにも利用されます。
数値および文字の場合、自動的に型変換が行われた後に比較が行われます。
型変換はバイト数の大きい型に合わされます。また、比較に小数を含む場合は小数の型にあわされます。
前述のとおり、比較の結果は「true」「false」のいずれか、つまりboolean型の結果となります。
比較演算 サンプルプログラム
以下のプログラムを「Number08.java」という名前でworkフォルダ内に保存します。
保存が完了したら、コマンドプロンプトを起動し、コンパイルおよび実行を行ってみましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
class Number08{ public static void main(String[] args){ //intとdoubleの比較 int a = 3; double b = 3.01; System.out.println(a > b); //charとdoubleの比較 char c = 'a'; System.out.println(c < 1000.0); //charとlongの比較 long d = 97L; System.out.println(c == d); //boolean型の変数へ代入 boolean e = c != d; System.out.println(e); } } |
実行例
c:\work>javac Number08.java
c:\work>java Number08
false
true
true
false
※実行例はコンパイルから実行までの例を表示しています。
まとめ
- 比較演算は値の同一性や大小関係を比較できる
- 比較演算子の結果はboolean型である「true」か「false」のいずれかになる
- 比較演算の被演算子には文字や数値などが利用できる
- 比較する際には型変換が行われる