I think you should use updateValue forKey method instead of subscript=value.
Subscript in Dictionary returns an Element?, you should not use it like a 
subscript in Array, which returns  Element.
Zhaoxin

Get Outlook for iOS

    _____________________________
From: Artyom Goncharov via swift-users <swift-users@swift.org>
Sent: 星期三, 五月 18, 2016 6:56 下午
Subject: [swift-users] Dictionary with optional values
To:  <swift-users@swift.org>


Hi, here is the playground snippet:

var noOptDict = ["one": 1, "two": 2, "three": 3 ]
noOptDict["one"] = nil
noOptDict // “one” is gone

var optDict: [String: Int?] = ["one": 1, "two": 2, "three": nil]
optDict["one"] = nil
optDict // “one” is gone but “three” is still there

So the first dict instance works as it should, the second using opt values 
allows to store nil but deletes the key when you assign nil. Is it bug, 
feature, or both?

Best wishes,
Artyom
_______________________________________________
swift-users mailing list
swift-users@swift.org
https://lists.swift.org/mailman/listinfo/swift-users



  
_______________________________________________
swift-users mailing list
swift-users@swift.org
https://lists.swift.org/mailman/listinfo/swift-users

Reply via email to