subscript 提供一種類似 Array 或 Dictionary 通過下標(biāo)來訪問對象的方式锯岖。例如:someArray[index] 剧董、someDictionary[key]
subscript 可以重載渤刃,就是一個類可以定義多個下標(biāo)腳本卑硫,可以設(shè)置為只讀和讀寫。
語法:
subscript(index: Int) -> Int {
get {
// return an appropriate subscript value here
}
set(newValue) {
// perform a suitable setting action here
}
}
給 String 添加下標(biāo)兵拢,實現(xiàn)便捷截仍谐:
subscript (r: Range<Int>) -> String {
get {
let startIndex = self.index(self.startIndex, offsetBy: r.lowerBound)
let endIndex = self.index(self.startIndex, offsetBy: r.upperBound)
return self[startIndex..<endIndex]
}
}
使用范例:
let str = "abcdefg"
let subStr = str[2..<5]
print(subStr)
//打铀绷:cde
更多實例請查看官網(wǎng):subscript