Java XNOR operator

后端 未结 4 799
难免孤独
难免孤独 2021-01-07 16:56

I do some research and I wrote some simple programs in java that suits my needs. I used logical operators AND,OR,XOR on integers but I miss XNOR operator. That what I\'m loo

相关标签:
4条回答
  • 2021-01-07 17:16
    if (!a ^ b) doSomething();
    

    It gives the same result so you do not have to use brackets.

    And I would prefer an XOR gate more since a mistake is likely to be made if you accidentally use a = at somewhere which supposed to be a ==.

    if (a = b) doSomething(); // performs like "if (b) doSomething();"
    

    A bitwise version as well.

    someInt = ~a ^ b
    
    0 讨论(0)
  • 2021-01-07 17:21

    The logical XNOR operator is ==.

    Do you mean bitwise?

    0 讨论(0)
  • 2021-01-07 17:23
    boolean xnor(boolean a, boolean b) {
        return !(a ^ b);
    }
    

    or even simpler:

    boolean xnor(boolean a, boolean b) {
        return a == b;
    }
    

    If you are actually talking about bitwise operators (you say you're operating on int), then you will need a variant of the first snippet:

    int xnor(int a, int b) {
        return ~(a ^ b);
    }
    
    0 讨论(0)
  • 2021-01-07 17:33

    The operator for XNOR is A==B, or !(A^B). This returns a boolean value.

    0 讨论(0)
提交回复
热议问题