【发布时间】:2015-06-11 00:27:55
【问题描述】:
我刚刚升级到 Swift 2.0 和 Xcode 7 Beta,我收到了错误:
无法将“String”类型的值分配给“String”类型的值
写作时:
var string = (change[NSKeyValueChangeNewKey]) as! String?
【问题讨论】:
-
我会归档雷达。
as!中的砰砰声似乎是必要的,因为您正在强迫沮丧。但您还希望包含?以表明它是一个 可能没有值的String类型。 这与 (1) 始终有值的String不同,以及来自 (2) 的泛型类型 (AnyObject)。我认为String?是一个非常独特的第三个选项。 -
Swift 的错误代码有时非常非常糟糕。将错误消息视为编译器说“Duh ...我不明白!”并从那里开始。 Patricks 关于可选绑定的建议值得一试。