[swift-users] Dictionary with optional values
Ray Fix
rayfix at gmail.com
Wed May 18 11:38:57 CDT 2016
> On May 18, 2016, at 3:56 AM, Artyom Goncharov via swift-users <swift-users at swift.org> wrote:
>
> var noOptDict = ["one": 1, "two": 2, "three": 3 ]
> noOptDict["one"] = nil
Wow, interesting. To me this was surprising behavior too.
The comment for Dictionary subscript says:
/// Access the value associated with the given key.
///
/// Reading a key that is not present in `self` yields `nil`.
/// Writing `nil` as the value for a given key erases that key from
/// `self`.
Which is exactly what it is doing. As the Zhaoxin said, you can use updateValue (and removeValueForKey) to get better results when dealing with optional dictionary values.
Ray
More information about the swift-users
mailing list