類、結構體和枚舉能夠定義下標,他能夠快速簡單地訪問集合(set,array,dict)的元素,你能夠使使用下標來獲取和設置集合元素。 你能夠定義一個類型的多個下標,經過索引值類型的不一樣來進行重載,並且索引值的個數能夠是多個。app
語法ui
先看一個實例spa
subscript(index: Int) -> Int { get { // return an appropriate subscript value here } set(newValue) { // perform a suitable setting action here } }
它容許你經過在實例後面的方括號中傳入一個或者多個的索引值來對實例進行訪問和賦值。語法相似於實例方法和計算型屬性的混合。與定義實例方法相似,定義下標使用subscript關鍵字,顯式聲明入參(一個或多個)和返回類型。與實例方法不一樣的是下標能夠設定爲讀寫或只讀。這種方式又有點像計算型屬性的getter和setter:code
subscript(index: Int) -> Int { // 返回與入參匹配的Int類型的值 }