2014-10-02 41 views
0

我一直在试图在swift中添加一个新的密钥到我的字典中,该密钥被声明为Dictionary<BagItem, Array<BagItem>>。但是,我无法做到这一点。我一直在试图做到这一点在这样的方法:如何添加一个新的密钥,但不添加价值的字典在迅速?

static func AddMainItem(item: BagItem) 
{ 
    self.bag[item] = Array<BagItem>() 
} 

注:我一直在尝试添加唯一的关键不添加值。我调试了代码,我发现它总是用新密钥更新以前的密钥。

谢谢你的答案 问候

回答

4

你将不能够。例如,你应该用一个空字符串“”来更新它。为字典条目分配nil是您如何删除密钥。把它放在操场上:

var dictionary = [String:String]() 
dictionary["test"] = nil 
println(dictionary) 
// [:] 

dictionary["test"] = "" 
println(dictionary) 
// [test: ] 
+0

假设我有一个mainItem和subItems属于每个主项目。我在我的项目中有一个包,如果用户想要将主要项目添加到包或添加子项目包,他应该能够单独完成。在我的情况下,如果用户想要将主物品添加到包中,我如何将mainItem添加到包中?注意:mainItems是键,子项是我的包结构中的值。 @minnesotaSteve – user2174358 2014-10-02 20:16:31

+0

如果你想使用字典,没有主站点和子项目的概念,只是键值对。如果没有,您可以始终将值设为零。如果您需要比字典更复杂的想法来考虑自定义类或存储数组或元组的数组。 – 2014-10-02 20:23:24

+0

这很有趣。我认为它肯定有办法实现这一点:)谢谢你的回答@minnesotaSteve – user2174358 2014-10-02 20:37:55