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
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
The logical XNOR operator is ==
.
Do you mean bitwise?
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);
}
The operator for XNOR
is A==B
, or !(A^B)
.
This returns a boolean
value.