我将以这种方式比较两本词典:
var previouldObj:[AnyHashable:Any]!
var obj:[AnyHashable:Any]!
for i in 0..<self.arrayData.count
{
obj=self.arrayData[i] as! [AnyHashable:Any]
if(obj == previouldObj)
{
}
}
但我有个错误
二进制运算符“==”不能应用于两个“[任意哈希表:任意]!”操作数
如何解决这个问题?请帮帮我谢谢
做到这一点的一种方法是将previouldObj
转换为NSDicpedia
并调用isequer
。
var previouldObj:[AnyHashable:Any]!
var nsDict = NSDictionary(dictionary: previouldObj)
var obj:[AnyHashable:Any]!
for i in 0..<self.arrayData.count
{
obj=self.arrayData[i] as! [AnyHashable:Any]
if(nsDict.isEqual(to: obj))
{
}
问题内容: 在尝试在Swift 3中执行此代码块时,我遇到了错误:二进制运算符’/’无法应用于两个’Double’操作数 但这有效 为什么第一段代码不起作用? 问题答案: 该错误有点误导。 在第一组代码中,被隐式声明为的数组。因此,任何将值分配给索引的尝试都将需要一个值。 问题在于结果是值,而不是。因此,编译器正在寻找返回的版本。该版本需要两个参数。由于您提供两个参数,因此您会遇到问题中提到的错误
在Swift 2.0中获取此错误。 二进制运算符“|”不能应用于两个UIViewAutoresizing操作数 代码如下:
尝试比较两个闭包时出错: 二进制运算符“==”不能应用于两个()- 我应该怎么做? 例如:
问题内容: 我正在尝试通过以下方式为本地通知注册我的应用程序: 在Xcode 7和Swift 2.0中,出现错误。请帮我。 问题答案: 在Swift 2中,通常要执行此操作的许多类型已更新为符合OptionSetType协议。这允许使用类似数组的语法,并且在您的情况下,可以使用以下语法。 与此相关的是,如果要检查选项集是否包含特定选项,则不再需要使用按位与和nil检查。您可以简单地询问选项集是否包
我正在尝试通过以下方式注册我的本地通知应用程序: 在Xcode 7和Swift 2.0中,I get error
以下代码过去可以在swift 2.2中编译,现在不再在swift 3.0中编译。我们如何解决这个问题? 错误:二进制运算符“====”不能应用于“Any”类型的操作数还有“UIBarbuttonite!”