jdk1.7的新特征(2)--数值字面量的改进
数值字面量的改进
二进制整数字面量
在java源代码中使用整数字面量时候,可以指定所使用的进制。在java7之前,所支持的进制包括十进制、八进制和十六进制。十进制是默认的,八进制是在整数子面量之前添加“0”来表示,十六进制则是在整数字面前添加“0x”或者“0X”表示,java7中添加了一种可以在字面量中使用的进制,即二进制。二进制整数字面量是通过在数字面前添加“0b”或者“0B”来表示的。
public void display(){ System.out.println(0b001001); System.out.println(0B001110); }
在数值字面量中使用下划线
如果java源代码中有一个很长的数值字面量,开发人员在阅读这段代码时需要很费力地去分析数字的位数,以知道其代表的数值的大小。现实生活正,当遇到很长的数字时,我们采用的是分段分隔的方式,比如500000,我们通常写为500,000即每三位数字用逗号分隔。这种做法的理念被加入到了java7中,不过用的不是逗号,而是下划线"_",整数和浮点数都允许,不会对字面量的数值产生影响。并不限定是3位一分隔
public void display1(){ System.out.println(1_500_000); double value1 = 4_6.3_4; int value2 = 89_3__1; System.out.println(value1); System.out.println(value2); }
虽然下划线在数值字面量中的应用非常灵活,但有些情况是不允许出现的。最基本的原则是下划线只能出现在数字中间,也就是说前后都必须是数字。这个限制的动机在于降低是实现的复杂度。

浙公网安备 33010602011771号