为什么Java中没有二进制文字?
是否有任何特殊原因,为什么不包括这种文字,而允许hex和八进制格式?
Java 7包含它。检查新function 。
例:
int binary = 0b1001_1001;
在Java 7中引入了二进制文字。请参阅“改进的整数文字” :
int i = 0b1001001;
从第一天开始不包括它们的原因很可能如下:Java是一种高级语言,并且在涉及不太重要和低级别的语言结构时受到了相当大的限制。 Java开发人员的一般政策是“如果有疑问,请将其保留”。
如果您使用的是Java 6或更高版本,那么您最好的选择就是
int yourInteger = Integer.parseInt("100100101", 2);
实际上,它是。 在java7中。
http://code.joejag.com/2009/new-language-features-in-java-7/
相关错误自2004年4月开放,优先级较低,被Sun / Oracle视为增强请求。
我猜他们认为二进制文字会使语言更复杂,并没有提供明显的好处……
这里似乎有一种印象,即实现二进制文字很复杂。 事实并非如此。 大约需要五分钟。 当然还有测试用例。
Java 7确实允许二进制文字! 检查一下:int binVal = 0b11010; 在这个链接: http : //docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html