Swift之数字字面常量

不同进制整数字面值按以下原则进行区分表示:

      1. 十进制数前边不用加前缀

      2. 一个二进制数,加一个0b的前缀

      3. 一个八进制数,加一个0o的前缀

      4. 一个16进制数,加一个0x的前缀

下边是整数字面值为17的不同进制的表示形式:

       let decimalInteger = 17 

       let binaryInteger = 0b10001    // 17的二进制表示

       let octalInteger = 0o21      // 17的八进制表示

       let hexadecimalInteger = 0x11  // 17 的十六进制表示

浮点数可以做十进制数,也可以做16进制数。浮点数在小数点两边至少有一个数字(或十六进制数)。浮点数也可以有一个可选的指数,可以用一个大写或者小写的e来表示一个十进制浮点数,或者用一个大小或小写的p来表示一个十六进制的浮点数。

可以为一个十进制数加一个exp的指数,为基数乘以10exp:        

   1.25e2 表示 1.25 × 102, 或者 125.0
   1.25e-2 表示 1.25 × 10-2, 或者 0.0125

可以为一个十六进制加一个为exp的指数,为基数乘以2exp

   0xFp2 表示 15 × 22, 或者 60.0
   0xFp-2 表示 15 × 2-2, 或者 3.75

下边为一个浮点数的各种表示方法:    

  let? ?decimalDouble? = ?12.1875

      let ?exponentDouble? = ?1.21875e1

?  let? ?hexadecimalDouble? = ?0xC.3p0

数字字面量也可以包含一些扩展的格式,用来使字面量更加可读,整数和小数都可填充一些额外的0也可以包含下划线用来帮助字面量的可读性。格式的类型不会影响字面量本身的值。

    let paddedDouble = 000123.456   // 123.456

    let OneMillion = 1_000_000         //  1000000

    let justOverOneMillion = 1_000_000.000_000_1    //  1000000.0000001

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。