Smi*_*e D -3 java bitwise-operators comparison-operators bitwise-and
所以,我正在遵循 pacman 教程,编码器使用 & 而不是 &&。但他没有解释它的作用。我搜索了一下,它说与 && 不同,& 检查这两个语句。这就说得通了。但编码器不会在比较上下文中使用它。这是他的代码。
screenData[] 是一个 255 个元素的 int 数组。
int ch = 0, pos = 0;
if((ch & 16) != 0) {
screenData[pos] = (int) (ch & 15);
}
Run Code Online (Sandbox Code Playgroud)
请告诉我他为什么这样做以及 & 在这种情况下有什么用处。
&按位执行\xe2\x80\x9cand\xe2\x80\x9d。
因此,ch & 15检查是否设置了前四个最低位中的任何一个(因为 15 是二进制的 1111)。运算的结果是一个数字,其他位全部设置为 0,只有 4 个低位位设置为 1,这些位在 中也设置为 1 ch。
| 归档时间: |
|
| 查看次数: |
123 次 |
| 最近记录: |