Accesses the value associated with the given key for reading and writing.
SDK
- Xcode 9.0+
Framework
- Swift Standard Library
Declaration
subscript(key: Key) -> Value? { get set }
Parameters
keyThe key to find in the dictionary.
Return Value
The value associated with key if key is in the dictionary; otherwise, nil.
Discussion
This key-based subscript returns the value for the given key if the key is found in the dictionary, or nil if the key is not found.
The following example creates a new dictionary and prints the value of a key found in the dictionary ("Coral") and a key not found in the dictionary ("Cerise").
var hues = ["Heliotrope": 296, "Coral": 16, "Aquamarine": 156]
print(hues["Coral"])
// Prints "Optional(16)"
print(hues["Cerise"])
// Prints "nil"
When you assign a value for a key and that key already exists, the dictionary overwrites the existing value. If the dictionary doesn’t contain the key, the key and value are added as a new key-value pair.
Here, the value for the key "Coral" is updated from 16 to 18 and a new key-value pair is added for the key "Cerise".
hues["Coral"] = 18
print(hues["Coral"])
// Prints "Optional(18)"
hues["Cerise"] = 330
print(hues["Cerise"])
// Prints "Optional(330)"
If you assign nil as the value for the given key, the dictionary removes that key and its associated value.
In the following example, the key-value pair for the key "Aquamarine" is removed from the dictionary by assigning nil to the key-based subscript.
hues["Aquamarine"] = nil
print(hues)
// Prints "["Coral": 18, "Heliotrope": 296, "Cerise": 330]"