根據(jù)使用場景不同下標(biāo)腳本也具有不同的含義。通常下標(biāo)腳本是用來訪問集合(collection),列表(list)或序列(sequence)中元素的快捷方式。你可以在你自己特定的類或結(jié)構(gòu)體中自由的實現(xiàn)下標(biāo)腳本來提供合適的功能。
例如,Swift 的字典(Dictionary)實現(xiàn)了通過下標(biāo)腳本來對其實例中存放的值進行存取操作。在下標(biāo)腳本中使用和字典索引相同類型的值,并且把一個字典值類型的值賦值給這個下標(biāo)腳本來為字典設(shè)值:
var numberOfLegs = ["spider": 8, "ant": 6, "cat": 4]
numberOfLegs["bird"] = 2
上例定義一個名為numberOfLegs的變量并用一個字典字面量初始化出了包含三對鍵值的字典實例。numberOfLegs的字典存放值類型推斷為Dictionary<String, Int>。字典實例創(chuàng)建完成之后通過下標(biāo)腳本的方式將整型值2賦值到字典實例的索引為bird的位置中。
更多關(guān)于字典(Dictionary)下標(biāo)腳本的信息請參考讀取和修改字典
注意:
Swift 中字典的附屬腳本實現(xiàn)中,在get部分返回值是Int?,上例中的numberOfLegs字典通過附屬腳本返回的是一個Int?或者說“可選的int”,不是每個字典的索引都能得到一個整型值,對于沒有設(shè)過值的索引的訪問返回的結(jié)果就是nil;同樣想要從字典實例中刪除某個索引下的值也只需要給這個索引賦值為nil即可。