等価オペレータと関係演算子は、あるオペランドが他のオペランドより大きいか、小さいか、等しいか、等しくないかどうかを判断します。
Orale社本家サイト演算子より引用
これらの演算子の大部分はおそらくあなたにもよく知られています。
重要2つのプリミティブ値が等しいかどうかをテストするときは、 "="ではなく "=="を使用する必要があることに注意してください。
Javaに用意されている比較演算子は、以下になります。
演算子 | 例 | 説明 |
---|---|---|
== | x == y | 左の値は右の値と等しい場合にtrueを返し、異なる場合にはfalseを返す。 |
!= | x != y | 左の値は右の値と異なる場合にtrueを返し、等しい場合にはfalseを返す。 |
> | x > y | 左の値は右の値より大きい場合にtrueを返し、小さい又は等しい場合にはfalseを返す。 |
>= | x >= y | 左の値は右の値以上の場合にtrueを返し、小さい場合にはfalseを返す。 |
< | x < y | 左の値は右の値より小さい場合にtrueを返し、大きい又は等しい場合にはfalseを返す。 |
<= | x <= y | 左の値は右の以下の場合にtrueを返し、大きい場合にはfalseを返す。 |
instanceof | x instanceof y | 左の値は右のクラスのインスタンスの場合にtrueを返し、異なる場合にはfalseを返す。 |
比較演算子サンプル
int x = 1;
int y = 2;
System.out.println(" x == y is " + ( x == y ) );
System.out.println(" x != y is " + ( x != y ) );
System.out.println(" x > y is " + ( x > y ) );
System.out.println(" x >= y is " + ( x >= y ) );
System.out.println(" x < y is " + ( x < y ) );
System.out.println(" x <= y is " + ( x <= y ) );
Object z = new Integer(3);
System.out.println(" z instanceof Integer is " + ( z instanceof Integer ) );
System.out.println(" z instanceof Number is " + ( z instanceof Number ) );
System.out.println(" z instanceof String is " + ( z instanceof String ) );
String xString = new String("hoge");
String yString = new String("hoge");
String zString = xString;
System.out.println(" xString == yString is " + ( xString == yString ) );
System.out.println(" xString == zString is " + ( xString == zString ) );
System.out.println(" xString.equals( yString ) is " + ( xString.equals( yString ) ) );
実行結果
x == y is false
x != y is true
x > y is false
x >= y is false
x < y is true
x <= y is true
z instanceof Integer is true
z instanceof Number is true
z instanceof String is false
xString == yString is false
xString == zString is true
xString.equals( yString ) is true
重要実行結果のポイントを整理すると