文章目录
- Java中数值型字面量的表示
- 二进制
- 八进制
- 十六进制
- 十六进制可以表示小数
- E(e)
- 下划线
Java中数值型字面量的表示
二进制
在Java7开始,加上 0b或0B就可以写二进制 ,比如0b1001就是9。
八进制
数字以0开头即为表示8进制。 例如:八进制012,就是十进制的10,可以前缀0有多个,比如00022,表示十进制18.
十六进制
数字以0x或0X开头表示16进制。例如0x14,就是十进制的20。0xa0就是160。
十六进制可以表示小数
例如:0x1p-3就是十进制的0.125,0x2.8p0就是十进制的2.5,0x12.2p4是十进制的290。
p表示指数,基数是2。
计算规则,拿0x12.2p4举例,(1*161+2*160 + 2*16-1)*24。
E(e)
对于double或float类型可以用e进行简化。比如1e9,就是109,34.2E-3,就是34.2*10-3(3.42E-4)
下划线
Java7开始,还可以利用 下划线来分割数字 ,使数字具有更好的可读性,例如:1_000_000 、0b11_1001等。byte,int,long,double,float,二进制,八进制,十六进制下都可以使用下划线。下划线除了在开头和末尾不能使用,可以在任意两数字中间使用,而且可以使用多个。最后Java编译器会在编译的时候把这些下划线去掉。