go语言.常量千位分隔符
下划线只是给人看的"千位分隔符"
Go 从 1.13 开始允许在数字字面量里插入下划线 _,作用纯粹是视觉分组,让长数字更容易读。编译器会直接忽略它:
200_000 // 二十万
200000 // 二十万,和上面一模一样
1_000_000 // 一百万
1000000
这和我们手写数字时习惯每三位加个逗号是一个道理(200,000),只是代码里逗号另有含义,所以用下划线代替。
使用规则(很宽松)
- 下划线可以出现在任意两位数字之间,但不能开头、不能结尾、也不能连续写两个:
_100 // 错:以下划线开头 100_ // 错:以下划线结尾 1__00 // 错:连续两个下划线 - 按几位分组都行,不强制三位:
12_345、1_23_456都合法,只是通常按三位最顺眼。 - 不只是十进制整数,小数、其他进制也能用:
3.1415_9265 // 小数 0xFF_FF // 十六进制 0b1010_1010 // 二进制
所以你代码里写 const N = 200_000,程序实际拿到的值就是整数 200000,纯粹是为了读代码时一眼看出"这是二十万"。
浙公网安备 33010602011771号