Swift 字面量


所謂字面量,就是指像特定的數字,字串或者是布林值這樣,能夠直接了當地指出自己的類型並為變數進行賦值的值。例如在下面:

let aNumber = 3         //整型字面量
let aString = "Hello"   //字符串字面量
let aBool = true        //布尔值字面量

整數字面量

整數字面量可以是一個十進制,二進制,八進位或十六進位常數。 二進位前綴為0b,八進位前綴為0o,十六進位前綴為0x,十進位沒有前綴:

以下為一些整數字面量的實例:

let decimalInteger = 17           // 17 - 十进制表示
let binaryInteger = 0b10001       // 17 - 二进制表示
let octalInteger = 0o21           // 17 - 八进制表示
let hexadecimalInteger = 0x11     // 17 - 十六进制表示

浮點型字面量

浮點型字面量有整數部分,小數點,小數部分及指數部分。

除非特別指定,浮點型字面量的預設推導類型為 Swift 標準函式庫類型中的 Double,表示64位元浮點數。

浮點型字面量預設用十進位表示(無前綴),也可以用十六進位表示(加上前綴 0x)。

十進位浮點型字面量由十進制數字字串後面跟著小數部分或指數部分(或兩者皆有)組成。十進制小數部分由小數點 . 後面跟著十進制數字串組成。指數部分由大寫或小寫字母 e 為前綴後面跟著十進制數字串組成,這串數字表示 e 之前的數量乘以 10 的幾次方。例如:1.25e2 表示 1.25 ⨉ 10^2,也就是 125.0;同樣,1.25e-2 表示 1.25 ⨉ 10^-2,也就是 0.0125。

十六進位浮點型字面量由前綴 0x 後面跟著可選的十六進位小數部分以及十六進位指數部分組成。十六進制小數部分由小數點後面跟著十六進制數字串組成。指數部分由大寫或小寫字母 p 為前綴後面跟著十進制數字串組成,這串數字表示 p 之前的數量乘以 2 的幾次方。例如:0xFp2 表示 15 ⨉ 2^2,也就是 60;同樣,0xFp-2 表示 15 ⨉ 2^-2,也就是 3.75。

負的浮點型字面量由一元運算子減號 - 和浮點型字面量組成,例如 -42.5。

浮點型字面量允許使用底線 _ 來增強數字的可讀性,下劃線會被系統忽略,因此不會影響字面量的值。同樣地,也可以在數字前面加 0,並不會影響字面量的值。

以下為一些浮點型字面量的實例:

let decimalDouble = 12.1875       //十进制浮点型字面量
let exponentDouble = 1.21875e1    //十进制浮点型字面量
let hexadecimalDouble = 0xC.3p0   //十六进制浮点型字面量

字串型字面量

字串型字面量由被包在雙引號中的一串字元組成,形式如下:

"characters"

字串型字面量中不能包含未轉義的雙引號(")、未轉義的反斜線(\)、回車符或換行符。

\\反斜線\\b退格(BS) ,將目前位置移到前一列\f換頁(FF),將目前位置移到下頁開頭\n#換行符號\r#回車符號\t##水平製表符垂直製表符##單引號\"雙引號#\0001到3位元八進位數所代表的任意字符\xhh...1到2位元十六進位所代表的任意字元
轉移字元意義
#\0空白字元
\v
\'

#以下為字串字面量的簡單實例:

import Cocoa

let stringL = "Hello\tWorld\n\nphp中文网官网:\'http://www.php.cn\'"
print(stringL)

以上程式執行結果為:
Hello	World

php中文网官网:'http://www.php.cn'

布林型字面量

布林型字面的默認類型是Bool。

  • #false

    表示假。值。