首页 > 编程 > Java > 正文

在Java中使用下划线分隔数的字面值的用法讲解

2019-11-26 14:29:35
字体:
来源:转载
供稿:网友

在Java SE 7中新增了以二进制形式的字面值表示方式,你可以像使用十进制一样,方便地使用二进制形式的字面值来表示数值。

例如:

// 一个8位的byte值:byte aByte = 0b100001;// 一个16位的short值:short aShort = 0b1010010100101;// 一个32位的int值:int anInt1 = 0b101000010100010110100101000101;// 一个64位的long值(注意末尾的后缀「L」)long aLong = 0b101000010L;// 二进制字面值以0b或0B开头,不区分大小写int anInt2 = 0B101;

在Java SE 7中,还支持以下划线作为分隔符联接的数值表示方式:

//十进制形式int anInt1 = 123_45_6;//二进制、十六进制等形式也支持int anInt2 = 0b10_0110_100;int anInt3 = 0xFF_EC_DE_5E;//小数形式也支持float pi = 3.14_15F;double aDouble = 3.14_15;//多个下划线相连int chain = 5______2____0;

不过以下几种书写形式是错误的:

//下划线不能放在最后int x = 52_;    //错误//下划线不能邻近小数点(邻近小数点前后都不行)float pi1 = 3_.1415F;  // 错误float pi2 = 3._1415F;  //错误//下划线不能紧放在后缀「L」或「F」的前面float pi3 = 3.1415_F;  //错误long aLong1 = 999_99_9999_L;//错误//下划线不能放在表示进制的前缀字符之间int x5 = 0_x52;    //错误

此外,还要注意下面这种,将下划线放在最前面的情况:

int _52 = 120; //在Java中,变量名称不能以数字开头,但可以下划线开头int x = _52;  //所以,这里的_52并不是一个数字的字面值形式,而是一个变量标识符(变量名)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表