1. ホーム

[解決済み】Javaで「論理的排他的論理和」演算子を作成する。

2022-03-30 13:03:28

質問

観察事項

Java には論理 AND 演算子があります。

Java には論理 OR 演算子があります。

Java には、論理 NOT 演算子があります。

問題です。

Javaには論理XOR演算子がありません。 サンによると . 定義したいのですが。

メソッド定義。

メソッドとしては、単純に以下のように定義されます。

public static boolean logicalXOR(boolean x, boolean y) {
    return ( ( x || y ) && ! ( x && y ) );
}



メソッド呼び出し。

このメソッドは、次のように呼び出されます。

boolean myVal = logicalXOR(x, y);



オペレーターの使用方法。

むしろ、以下のように使われる演算子が欲しいところです。

boolean myVal = x ^^ y;



質問です。

Javaで新しい演算子を定義する方法について、何も見当たりません。 どこから手をつければいいのでしょうか?

どのように解決するのですか?

ジャワ は論理的なXOR演算子を持っています であるが、それは ^ (のように a ^ b ).

それとは別に、Javaでは新しい演算子を定義することができません。

編集する 以下はその例です。

public static void main(String[] args) {
    boolean[] all = { false, true };
    for (boolean a : all) {
        for (boolean b: all) {
            boolean c = a ^ b;
            System.out.println(a + " ^ " + b + " = " + c);
        }
    }
}

出力します。

false ^ false = false
false ^ true = true
真 ^ 偽 = 真
真 ^ 真 = 偽