好奇一点,在Swift中,更理想的是初始化一个空的NSMutableDictionary变量NSMutableDictionary = [:]
,然后将其值重新分配给一个新的字典(例如来自API),
或者,是否更好地声明一个可选的NSDictionary,NSDictionary?
并将其分配给一个新的字典?
答案 0 :(得分:0)
这取决于您的需求,您希望它有时是零吗?有时候它没有? 如果一个数组总是有价值的,即使它是一个空值,我个人也喜欢马上初始化它,而不是在任何地方打包都没有麻烦。
也许如果你有两个数组,一个是普通数组,第二个是搜索结果。您可能想检查搜索结果是否为nil,如果是,则显示array1,如果它不是显示它。
这意味着你只是搜索"有时",因此有时只使用该数组 - 所以如果你不使用它,你也可以在不使用时解除分配的时间。
编辑:我在我的例子中一直使用数组,但在这些情况下同样适用于字典。 编辑:在Swift中,最好避免使用NS'类,有时你必须使用它们,当然。但斯威夫特的词典完成了这项工作。示例:
var sometimesUselessDict: Dictionary<String, AnyObject>?
var alwaysUsedDictionary = Dictionary<String, AnyObject>()
干杯
答案 1 :(得分:0)
因此,使用Swift技术上最好使用Dictionary类型。像这样举例如:
var dict: Dictionary<String, Int>
如果你需要字典作为一个整体,可以使用一个可选的。
答案 2 :(得分:0)
只有当您需要能够区分空的字典和根本不存在的字典时,才应将其设为可选。例如,如果您从服务器接收数据,则可能需要区分未返回数据的成功响应(空字典)和响应失败或无效(nil)。
如果这种区别并不重要,我总是选择不可选的,以避免不必要的展开。