对java中的变量应用AND操作

Peg*_*gah 1 java variables hex bit-manipulation decimal

我想在a和b(十进制)之间进行"AND"运算.b的值在代码中确定.结果,如果我写得像:

String g= Integer.toHexString(b);
int k=a & g;
Run Code Online (Sandbox Code Playgroud)

我得到错误,因为它应该是这样的:

int k=a & 0xFF;
Run Code Online (Sandbox Code Playgroud)

不知何故0x应该在十六进制值之前,同时它不能是String类型.对于第二个操作数可以是变量的情况,我没有在Internet中找到任何示例.我应该手动编写一个for循环来逐位应用AND操作,还是有一个直接的解决方案呢?我感谢您的帮助.

Aff*_*ffe 6

如果b已经是整数,那么你的代码应该是:

int k = a & b;

数字是数字是数字.0xFFvs 的人类表征对255&运算符没有任何影响.对于计算机来说,没有"Hex Integer"和"Decimal Integer"这样的东西,它只是一个值.写作的不同方式是在人的尽头.