Java7中新特性的数值字面量的增强

字面量【直接赋予明确的值】
指的是在源代码中直接表示一个固定的值。比如基本类型字面量:包括整数、浮点数、字符串和布尔值等。

增强1:支持的数字字面量表示

  • 十进制:默认
  • 八进制:0开头来表示
  • 十六进制:0x或0X开头
  • 二进制(新加的):0b或0B开头

增强2:在数值字面量中使用下划线

在java 7中,数值字面量,不管是整数还是浮点数,都允许在数字之间插入任意多个下划线。这些下划线不会对字面量的数值产生影响,目的就是方便阅读。当是电话号码,消费者ID号,零件编码等下划线的作用会非常明显
比如:
85_730_000
3_5.3_44
79_3___1 多个下划线无所谓

注意点

  • 下划线只能出现在数字中间,前后必须是数字。所以“_100”、“0b_101“,无法通过编译。因为是编译时就会出错,智能IDE就会提示,也不必太过在意,知道有坑就行
    这样限制的动机就是可以降低实现的复杂度。有了这个限制,Java编译器只需在扫描源代码的时候将所发现的数字中间的下划线直接删除就可以了。如果不添加这个限制,编译器需要进行语法分析才能做出判断。比如:_100,可能是一个整数字面量100,也可能是一个变量名称。这就要求编译器的实现做出更复杂的改动。
  • ********************************* 不积跬步无以至千里,不积小流无以成江海 *********************************

猜你喜欢

转载自blog.csdn.net/weixin_42465125/article/details/89316278