[Swift Basic] Numeric Literials
2016-09-30 本文已影响8人
sunlitamo
Swift 中 对于不同的整数的整数字面量有以下前缀规定:
十进制整数 :A decimal number, with no prefix
二进制整数 :A binary number, with 0b prefix
八进制整数 :An octal number, with a 0o prefix
十六进制整数:A hexadecimal number, with a 0x prefix
例子:
let decimalInteger = 17
let binaryInteger = 0b10001
let octalInteger = 0o21
let hexadecimalInteger = 0x11
Swift 中,浮点数字面量是可以十进制化(decimal),或十六进制化(hexadecimal) 的。
十进制浮点数以大小写 <b>e</b> 结尾 例如:
1.25e2 ==> 1,25 x 10^2 ==> 125.0
1.25e-2 ==> 1,25 x 10^-2 ==> 0.0125
十六进制浮点数以大小写<b> p </b>结尾 例如:
0xFp2 == 15 x 2^2 == 60
0xFp-2 == 15 x 2^-2 == 3.75
数字字面量可以添加另外的formatting以增加阅读性:
- Extra 0 padding
let paddedDouble = 123.456
let paddedDouble = 000123.456
- Extra underscores
let oneMillion = 1_000_000
let justOverOneMillion = 1_000_000.000_000_1