Swift - Empty NSMutableDictionary or NSDictionary? Optional



只是好奇,在 Swift 中,初始化一个空的 NSMutableDictionary 变量是否更理想,NSMutableDictionary = [:] ,然后将其值重新分配给新字典(例如来自 API(,

或者,声明一个可选的 NSDictionary、NSDictionary?并将其分配给新字典更好吗?

因此,对于 Swift,从技术上讲,使用 Dictionary 类型是最佳实践。例如,像这样:

var dict: Dictionary<String, Int>

如果您需要字典作为一个整体能够为零,请使用可选。

这取决于您的需求,您是否希望它有时为零? 有时是零吗?如果一个数组总是有价值,即使它是一个空值,我个人喜欢立即初始化它,而不是到处解包的麻烦。

也许如果你有两个数组,一个是普通数组,第二个是搜索结果。您可能希望先检查搜索结果是否为 nil,如果是,则显示 array1,如果不显示它。

这意味着你只搜索"有时",因此该数组只在有时被使用 - 所以如果你大部分时间不使用它,你也可以在不使用时解除分配。

编辑:我一直在我的示例中使用数组,但在这些情况下同样适用于字典。编辑:在Swift中,最好避免使用"NS"类,有时你必须使用它们,当然。但 Swift's Dictionary 可以完成这项工作。

例:

var sometimesUselessDict: Dictionary<String, AnyObject>?
var alwaysUsedDictionary = Dictionary<String, AnyObject>()

干杯

仅当您

需要能够区分空字典和根本不存在的字典时,才应将其设置为可选。 例如,如果您从服务器接收数据,则可能需要区分未返回数据的成功响应(空字典(和失败或无效的响应(nil(。

如果这种区别不重要,我总是使用非可选的,以避免不必要的解包。

最新更新