我有以下内容:
int a = 10001000;
int b = 10000000;
我需要以下输出:
(a&b) = 10000000;
但我的问题是,在使用"&"操作之前,Java会将整数转换为二进制,我真的很想能够以上述方式在整数上使用这个操作。这可行吗?
我有以下内容:
int a = 10001000;
int b = 10000000;
我需要以下输出:
(a&b) = 10000000;
但我的问题是,在使用"&"操作之前,Java会将整数转换为二进制,我真的很想能够以上述方式在整数上使用这个操作。这可行吗?
首先,您需要使用0b
来表示a
和b
是二进制字面值。其次,您需要使用类似于Integer.toBinaryString(int)
的方法来获取按位&
运算的二进制结果,例如:
int a = 0b10001000, b = 0b10000000;
System.out.printf("(a&b) = %s;%n", Integer.toBinaryString(a & b));
输出(按要求)
(a&b) = 10000000;
int
是一个32位二进制类型。你在问什么?如何说 int c = 136;
?还是 System.out.println(Integer.parseInt("0b10001000".substring(2), 2));
? - Elliott Frisch
&
,结果应该是什么? - Henry