我正在尝试在Java中进行一些操作来应用掩码,表示集等.为什么:
int one=1;
int two=2;
int andop=1&2;
System.out.println(andop);
Run Code Online (Sandbox Code Playgroud)
如果应为"3"则打印"0":
0...001
0...010
_______
0...011
Run Code Online (Sandbox Code Playgroud)
我怎么能得到这种行为?
提前致谢
tro*_*foe 11
使用二进制'或'运算符:
int andop = 1 | 2;
Run Code Online (Sandbox Code Playgroud)
二进制'和'运算符将保留两边的位集; 在的情况下,1和2这是没有位可言.
你正在寻找一个按位"OR",而不是"AND":
int both = one | two;
Run Code Online (Sandbox Code Playgroud)
"或"表示:" 如果输入x*为1,则*n应为1,或者输入y为1,则为1 "
"AND"说:" 如果输入x*为1,则*n应为1,输入y为1,则为1 "
| 归档时间: |
|
| 查看次数: |
961 次 |
| 最近记录: |