我做了一些研究,并在java中编写了一些适合我需要的简单程序。 我在整数上使用逻辑运算符AND,OR,XOR,但我想念XNOR运算符。 我正在寻找的是一个XNOR运算符,其行为与其他提到的相同(可以应用于整数)。 有人可以用Java编写这样的类吗?

===============>>#1 票数:61

boolean xnor(boolean a, boolean b) {
    return !(a ^ b);
}

甚至更简单:

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

如果你实际上在谈论按位运算符(你说你在int运行),那么你将需要第一个代码片段的变体:

int xnor(int a, int b) {
    return ~(a ^ b);
}

===============>>#2 票数:16

逻辑XNOR运算符是==

你是说按位吗?

===============>>#3 票数:3

if (!a ^ b) doSomething();

它给出了相同的结果,因此您不必使用括号。

而且我更喜欢XOR门,因为如果你不小心在一个应该是==某个地方使用= ,则可能会犯错误。

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

一个按位版本。

someInt = ~a ^ b

===============>>#4 票数:2

运算符是A==B ,或!(A^B)

  ask by user1092472 translate from so

未解决问题?本站智能推荐:

关注微信公众号