Java中是否有二进制文字?
我想用二进制文字声明我的整数。 在Java中有可能吗?
看看这个链接:
http://en.wikibooks.org/wiki/Java_Programming/Literals/Numeric_Literals/Integer_Literals
在Java中,您可以输入几种格式的整数:
1)十进制数,如1995,51966。负数十进制数,如-42实际上是由带有一元否定运算的整数文字组成的表达式。
2)作为八进制数,使用前导0(零)数字和一个或多个附加八进制数字(0到7之间的数字),例如077.八进制数可以评估为负数; 例如037777777770实际上是十进制值-8。
3)作为hex数,使用0x(或0X)forms后跟一个或多个hex数字(0到9之间的数字,a到f或A到F)。 例如,0xCAFEBABEL是长整数3405691582.与八进制数字一样,hex文字可能表示负数。
4)从J2SE 7.0开始,作为二进制数,使用0b(或0B)forms,后跟一个或多个二进制数字(0或1)。 例如,0b101010是整数42.与八进制和hex数字一样,二进制文字可以表示负数。
如果您没有J2SE 7.0,请使用以下命令:
int val = Integer.parseInt("001101", 2);
在JDK 7中,它是可能的:
int binaryInt = 0b101;
只需在数字前加上0b
。