在网上发现了一些我正在寻找解决问题的代码,而且我并不完全确定它所说的是什么#(候选& 1)== 0&#34 ;。候选人是一个int。
if ((candidate & 1) == 0)
{
if (candidate == 2)
{
return true;
}
else
{
return false;
}
}
答案 0 :(得分:2)
它是二进制(按位)AND运算符。在您的情况下,if
语句检查最低有效位是否为1,换句话说,candidate
是否为偶数:
使用数字35和34的示例:
35 & 1 = 0b100011 & 0b1 == 1 => odd
34 & 1 = 0b100010 & 0b1 == 0 => even
另请参阅:https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/operators/and-operator