カテゴリ: JavaSilver試験対策 更新日: 2026/07/07

Javaの関係演算子を完全解説!初心者でもわかる基本から注意点まで

023
Javaの関係演算子

先生と生徒の会話形式で理解しよう

生徒

「Javaで変数同士を比較する方法ってどうやるんですか?」

先生

「いい質問ですね!Javaでは関係演算子を使って、変数同士を比較することができますよ。」

生徒

「関係演算子って何ですか?具体的に教えてください!」

先生

「わかりました。それでは、関係演算子の種類や使い方について詳しく解説しましょう。」

1. 関係演算子とは?

1. 関係演算子とは?
1. 関係演算子とは?

Javaの関係演算子は、変数や値を比較して、結果をtrueまたはfalseとして返す演算子です。条件式や制御構文などで広く使われます。

以下は代表的な関係演算子です:

演算子 使用例 意味
== x == y xとyが等しければtrue
!= x != y xとyが等しくなければtrue
> x > y xがyより大きければtrue
>= x >= y xがy以上であればtrue
< x < y xがyより小さければtrue
<= x <= y xがy以下であればtrue
instanceof x instanceof Y xがクラスYまたはそのサブクラスのインスタンスであればtrue

2. 関係演算子の使用例

2. 関係演算子の使用例
2. 関係演算子の使用例

実際のコードで、関係演算子の基本的な使い方を見てみましょう。


public class RelationalOperatorsExample {
    public static void main(String[] args) {
        int x = 10;
        int y = 20;
        System.out.println(x == y);  // false
        System.out.println(x != y);  // true
        System.out.println(x < y);   // true
        System.out.println(x >= y);  // false
    }
}

このプログラムでは、変数xyを比較し、それぞれの演算結果を出力しています。

3. 関係演算子の注意点

3. 関係演算子の注意点
3. 関係演算子の注意点

関係演算子を使用する際には、いくつかの注意点があります:

  • 数値型に限定された演算子:<」「<=」「>」「>=」は、数値型(int, floatなど)にのみ使用できます。真偽値(boolean)には使えません。
  • 型の一致が必要:比較する値の型が異なる場合、型の変換が必要になることがあります。
  • instanceofの利用:instanceofは、オブジェクトが特定のクラスまたはそのサブクラスに属しているかを確認するために使用されます。

次のコードは、間違った使い方の例を示しています:


public class InvalidComparisonExample {
    public static void main(String[] args) {
        boolean a = true;
        boolean b = false;
        // System.out.println(a <= b);  // コンパイルエラー
    }
}

この例では、boolean型の変数に対して「<=」を使用しているため、コンパイルエラーが発生します。boolean型には「==」または「!=」を使用しましょう。

Javaをこれから始める人や、 オブジェクト指向の考え方を基礎から理解したい人には、 定番の入門書がこちらです。

スッキリわかるJava入門 第4版をAmazonで見る

※ Amazon広告リンク

4. よくあるエラーと対策

4. よくあるエラーと対策
4. よくあるエラーと対策

関係演算子を使用する際によくあるエラーと、その対策を以下にまとめます。

  • コンパイルエラー:数値以外の型に「<」や「<=」を使用するとエラーになります。適切な演算子を選択してください。
  • 意図しない結果:比較の対象が間違っていると、意図しない結果が返されます。コードのロジックを確認しましょう。

以下は、修正されたコードの例です:


public class CorrectComparisonExample {
    public static void main(String[] args) {
        boolean a = true;
        boolean b = false;
        System.out.println(a == b);  // false
        System.out.println(a != b);  // true
    }
}

5. 浮動小数点数の比較における注意点

5. 浮動小数点数の比較における注意点
5. 浮動小数点数の比較における注意点

Javaで double 型や float 型といった浮動小数点数を比較する際には、注意が必要です。コンピュータの内部では小数が正確に表現できない場合があり、計算結果に微小な誤差が含まれることがあるためです。

例えば、以下のコードを見てみましょう。


public class FloatComparison {
    public static void main(String[] args) {
        double a = 0.1 + 0.2;
        double b = 0.3;
        System.out.println("aの値: " + a);
        System.out.println(a == b); // 期待はtrueだが...
    }
}

実行結果:


aの値: 0.30000000000000004
false

このように、人間には 0.3 に見える値でも、== で比較すると false になることがあります。小数を比較する場合は、誤差を許容する範囲(しきい値)を決めて比較するか、厳密な計算が必要な場合は BigDecimal クラスを使用しましょう。

6. 文字列の比較(==とequalsの違い)

6. 文字列の比較(==とequalsの違い)
6. 文字列の比較(==とequalsの違い)

初心者が最もつまずきやすいのが、文字列(String)の比較です。Javaにおいて == 演算子は「同じインスタンス(メモリ上の場所)を指しているか」を判定します。中身の文字が同じかどうかを調べたい場合は equals メソッドを使います。


public class StringCompare {
    public static void main(String[] args) {
        String s1 = new String("Java");
        String s2 = new String("Java");

        System.out.println(s1 == s2);      // false (場所が違う)
        System.out.println(s1.equals(s2)); // true (中身が同じ)
    }
}

プログラミング未経験の方には、「== は双子本人かどうかをチェックし、equals は双子が持っている持ち物が同じかどうかをチェックする」というイメージで伝えると分かりやすいでしょう。文字列の比較には原則として equals を使うのが安全です。

7. 条件分岐(if文)との組み合わせ

7. 条件分岐(if文)との組み合わせ
7. 条件分岐(if文)との組み合わせ

関係演算子が最も活躍するのは、プログラムの流れを分岐させる if 文の中です。比較の結果として返される true または false を利用して、実行する処理を切り替えます。


public class IfComparisonExample {
    public static void main(String[] args) {
        int score = 85;

        // 80点以上なら「合格」と表示する
        if (score >= 80) {
            System.out.println("おめでとうございます!合格です。");
        } else {
            System.out.println("残念ながら不合格です。");
        }
    }
}

実行結果:


おめでとうございます!合格です。

このように、関係演算子を使いこなすことで、「もし〜だったら」という複雑なロジックをコンピュータに命令できるようになります。まずは基本の 6 種類の演算子をマスターして、自在に条件式を作れるようになりましょう。

まとめ

まとめ
まとめ

Javaの関係演算子について、基本から注意点まで学びました。関係演算子は、数値や文字、真偽値、オブジェクトの比較に使用され、条件分岐やループ処理など、幅広い場面で欠かせない要素です。今回の記事では、代表的な関係演算子の種類、使用例、そして注意すべき点を解説しました。以下に学んだポイントをまとめます。

  • 関係演算子の種類:==」「!=」「<」「<=」「>」「>=」「instanceof」の7つを理解すること。
  • 真偽値の比較:boolean型には「==」や「!=」を使用し、「<」や「<=」は使用できない。
  • 型の一致:比較する値の型が異なる場合、暗黙的または明示的な型変換が必要。
  • 可読性:複雑な比較式は分解して書くことで、コードの読みやすさが向上する。

以下は、関係演算子の応用例です。複数の条件を使って値を評価する方法を示します。


public class AdvancedComparisonExample {
    public static void main(String[] args) {
        int age = 25;
        boolean isAdult = age >= 18 && age < 65; // 成人かどうかを判定
        boolean isSenior = age >= 65;           // 高齢者かどうかを判定

        System.out.println("成人: " + isAdult); // true
        System.out.println("高齢者: " + isSenior); // false
    }
}

この例では、論理演算子と組み合わせて条件を判定する方法を示しました。複数の条件を組み合わせることで、より高度な条件分岐を実現できます。

先生と生徒の振り返り会話

生徒

「関係演算子って、意外と種類が多いんですね。でも、使い方を知ると便利そうです!」

先生

「その通りです。条件を比較する場面では必ず使うので、しっかり覚えておきましょう。」

生徒

「特にboolean型には注意が必要なんですね。間違えて<とか使わないようにします!」

先生

「その意識は大事です。次回は、関係演算子を実際のプログラムでどう活用するか学びましょう。」

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

Javaの関係演算子とは何ですか?初心者向けに簡単に知りたいです。

Javaの関係演算子とは、変数や値を比較して結果をtrueかfalseで返す演算子です。== や !=、<、>、<=、>=、instanceof などがあり、条件分岐やif文でよく使われます。

Javaで「==」と「!=」の使い方を教えてください。

== は2つの値が等しい場合にtrue、!= は値が異なる場合にtrueを返す関係演算子です。数値や文字などの比較で最もよく使います。

Javaで大小比較に使う関係演算子には何がありますか?

大小比較には <、>、<=、>= を使います。数値型同士の比較に使用でき、真偽値型(boolean)には使えない点が重要です。

Javaの関係演算子を理解するメリットは何ですか?

条件分岐・ループ・オブジェクトの型判定など、あらゆるロジックの基礎になります。正しく使えるとコードの品質と可読性が向上します。
JavaSilver試験対策の一覧へ
新着記事
Java
Javaの演算子の優先順位
Javaの演算子の優先順位を完全解説!初心者向けの丁寧な解説
Java
Javaのローカル変数と順次処理
Javaのローカル変数と順次処理を徹底解説!初心者でも理解できるコードの基本
Python
NumPyのdtype一覧!int・float・bool・str・objectの違いを比較
NumPyのdtype一覧を完全解説!int・float・bool・str・objectの違いを初心者向けに比較
Dart
Dartのコンストラクタまとめ!デフォルト・名前付きコンストラクタの使い方
Dartのコンストラクタまとめ完全ガイド!デフォルトコンストラクタと名前付きコンストラクタの使い方を初心者向けに解説
人気記事
Java
Java の Random クラスを使ってランダムな数値を生成する方法
JavaのRandomクラスの使い方を完全ガイド!初心者でもわかる乱数生成
Java
Java の getter メソッドと setter メソッドの使い方
Javaのgetterメソッドとsetterメソッドの使い方を完全ガイド!初心者でもわかるアクセス方法
AWS
【AWS】RDSの料金体系まとめ!ざっくり理解・高いと感じる理由も解説
【AWS】RDSの料金体系まとめ!ざっくり理解・高いと感じる理由も解説
AWS
【AWS】S3の料金体系まとめ!無料枠・課金ポイント・見積もり方法まで
【AWS】S3の料金体系まとめ!無料枠・課金ポイント・見積もり方法まで

🔌 USBポート不足を解消

Type-C 1本で拡張。
開発・作業環境を一気に快適に

UGREEN USB-Cハブを見る

※ Amazon広告リンク