什么是字面量:簡潔明了的指出自己的類型并且能為變量賦值的值
// xiaoming false 都是字面量
let name = "xiaoming"
let ok = false
// 字典 數(shù)組 使用字面量
let nums:Array = ["1","2","3"];
let dic = ["name":"xxx"];
Swift 提供了一組協(xié)議 使用字面量來表達特定的類型
- 對于那些實現(xiàn)了字面量表達協(xié)議的類型鳍悠,在提供字面量賦值的時候寂殉,就可以簡單的按照協(xié)議方法中定義的規(guī)則
- 通過賦值的方式將值表達為對應類型 ,這些協(xié)議包含了原生的字面量
- 其實每一個字面量表達式內(nèi)部都有一個初始化方法
//實現(xiàn)一個字面量
class Dog:ExpressibleByStringLiteral{
let name : String
typealias StringLiteralType = String
required init(stringLiteral value: String) {
self.name = value
}
}
//通過字符串來初始化一個類
let d : Dog = "123"
print(d.name)