循环遍历 Swift 4 中的可选对象

赛博3rZ

我有这个代码

let dic = snapshot.value as! [String:[String:Any]]
Array(dic.values).forEach {
    print($0["fcmToken"])
}

它产生这 3

Optional(c1DdtdDF1Rs:APA91bGJBUD65nidQiFDO90AVNgq0wiMjUaZmZXVJ8c_tYmFe5dkmgweOdO10jzPRlMVZF_qNyWMMsu7EhA5IMVo3jLWvBThDteR7WWUPqau-ZFAHKQPHgI5Vb48vA-_4nwkZCKrOVoT)
Optional(c1DdtdDF1Rs:APA91bGJBUD65nidQiFDO90AVNgq0wiMjUaZmZXVJ8c_tYmFe5dkmgweOdO10jzPRlMVZF_qNyWMMsu7EhA5IMVo3jLWvBThDteR7WWUPqau-ZFAHKQPHgI5Vb48vA-_4nwkZCKrOVoT)
Optional(c1DdtdDF1Rs:APA91bGJBUD65nidQiFDO90AVNgq0wiMjUaZmZXVJ8c_tYmFe5dkmgweOdO10jzPRlMVZF_qNyWMMsu7EhA5IMVo3jLWvBThDteR7WWUPqau-ZFAHKQPHgI5Vb48vA-_4nwkZCKrOVoT)

我想遍历它们并添加一个简单的 if-check。

我试过了

let dic = snapshot.value as! [String:[String:Any]]
Array(dic.values).forEach {
    print($0["fcmToken"])

    if($0["fcmToken"] != fcmToken) {
        print("token is not match detected")
    }

}

我不断得到

二元运算符 '!=' 不能应用于类型为 'Any?' 的操作数 和“字符串?”

如何进一步调试呢?

哑光

你有:

let dic = snapshot.value as! [String:[String:Any]]
Array(dic.values).forEach {
    print($0["fcmToken"])
    if($0["fcmToken"] != fcmToken) {
        print("token is not match detected")
    }
}

但它给你一个编译错误。假设这条线正在工作:

let dic = snapshot.value as! [String:[String:Any]]

剩下的我会这样写:

for v in dic.values {
    if let token = v["fcmtoken"] as? String, token != fcmtoken {
        print("token \(token) is not match detected")
    }
}

效果是一样的,没有错误。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Swift中循环遍历NSMutableArray

来自分类Dev

Swift函数-传递可选对象

来自分类Dev

在Swift中,如何避免同时使用可选对象和nil对象?

来自分类Dev

初始化中隐式展开的可选对象-Swift

来自分类Dev

初始化中隐式展开的可选对象-Swift

来自分类Dev

在Swift中包装和展开可选对象时会发生什么?

来自分类Dev

允许可选对象使用类扩展函数 Swift

来自分类Dev

循环遍历对象的对象

来自分类Dev

Angular4 使用打字稿循环遍历 .subscribe 中返回的 JSON 对象

来自分类Dev

在PHP中循环遍历对象

来自分类Dev

在 Swift 4 中解开可选项

来自分类Dev

Swift How To-检查可选对象数组的First / Where语句-展开并匹配

来自分类Dev

在Python中循环遍历?

来自分类Dev

遍历树枝中的循环

来自分类Dev

在Swift中创建一个函数来迭代和循环遍历数组

来自分类Dev

在Swift中遍历数组时,是否存在循环的索引/迭代引用?

来自分类Dev

IOS Swift循环遍历info.plist中应用程序提供的字体

来自分类Dev

Firebase While 循环 Swift 4

来自分类Dev

延迟循环遍历数组-Swift

来自分类Dev

Swift:循环遍历任何类型的集合?

来自分类Dev

延迟循环遍历数组-Swift

来自分类Dev

在perl中循环遍历文件,并删除少于4个字符的字符串

来自分类Dev

在JavaScript中的数组中循环遍历对象

来自分类Dev

在Java中的ArrayList中循环遍历对象

来自分类Dev

gulp循环遍历json对象

来自分类Dev

成功循环遍历对象数组

来自分类Dev

循环遍历对象数组 PHP

来自分类Dev

在Swift中遍历字母

来自分类Dev

灰尘js循环遍历json中的对象