Java 中是否有二进制文本?

2022-09-01 10:13:26

我想通过二进制文本声明我的整数。在Java中可能吗?


答案 1

从 Java 7 开始,您可以使用形式 (或 ) 后跟一个或多个二进制数字 (0 或 1) 将整数直接表示为二进制数字。例如,是整数 42。与八进制和十六进制数字一样,二进制文本可能表示负数。0b0B0b101010

如果您没有 Java 7,请使用以下命令:

int val = Integer.parseInt("001101", 2);

还有其他方法可以输入整数:

  1. 作为十进制数,如 、 。负十进制数(如 )实际上是由整数文本和一元否定运算组成的表达式。199551966-42

  2. 作为八进制数,使用前导 0(零)数字和一个或多个附加八进制数字(介于 0 和 7 之间的数字),例如 077。八进制数可以计算为负数;例如,实际上是十进制值 -8。037777777770

  3. 作为十六进制数字,使用格式 0x(或 0X),后跟一个或多个十六进制数字(从 0 到 9、a 到 f 或 A 到 F 的数字)。例如,是长整数3405691582。与八进制数一样,十六进制文本可以表示负数。0xCAFEBABEL

更多细节可以在这本维基教科书中找到。


答案 2

在 JDK 7 中,有可能:

int binaryInt = 0b101;

只需在号码前加上前缀即可。0b