所以出于某种原因,我无法做到这一点......编码多年,Swift自发布以来,以某种方式从未出现问题。我错过了什么吗?
var categories: [Int : Category] = [:]
现在我无法执行类似categories.setObject()
的操作,甚至做categories[0] = Category()
仍然无法在字典中创建该元素,但也不会抛出任何错误。
即使使用简单的var dict: [String : String] = [:]
注意:我意识到这可能是一个非常简单的问题,但我已经完成了我的挖掘......我不仅仅是在这里发帖,因为我懒得做研究。哈哈
修改
类别定义
struct Category {
var id: Int!
var name: String!
}
超级简单......
答案 0 :(得分:1)
这非常有效......
struct Category {
var id: Int!
var name: String!
}
var categories: [Int : Category] = [:] // [:]
categories[0] = Category() // Category
print("\(categories)") // "[0: Category(id: nil, name: nil)]\n"
你是如何检查存在的?您在属性中使用了!
,然后没有为它们提供值 - 这可能是问题所在。
答案 1 :(得分:1)