swift - 如何在 swift 3 中检查一个对象是否是字典?

标签 swift dictionary

尝试了 'is' 关键字。

// Initialize the dictionary

let dict = ["name":"John", "surname":"Doe"]

// Check if 'dict' is a Dictionary

if dict is Dictionary {
    print("Yes, it's a Dictionary")
}

这会给出一个错误提示“'is' is always true”。 我只想检查一个对象是否是字典。它可以与任何键任何值对。

enter image description here

key 是可哈希的,它不接受 Any 关键字。

最佳答案

如果你想检查一个任意对象是否是一个字典首先你必须使对象未指定:

let dict : Any = ["name":"John", "surname":"Doe"]

现在你可以检查对象是否是一个字典

if dict is Dictionary<AnyHashable,Any> {
    print("Yes, it's a Dictionary")
}

但这种方式是理论上的,仅供学习使用。基本上,将 distinct 转换为未指定的类型是非常愚蠢的。

关于swift - 如何在 swift 3 中检查一个对象是否是字典?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42973276/

相关文章:

ios - 基本 Firebase 数据库问题 (Xcode + Swift)

ios - 从编程 uibutton 属性访问全局变量

dictionary - 你如何遍历两个字典并在同一路径上获取值?

ios - 子类 uitableview 单元格以快速更改分隔符高度

ios - 如何更改 "back"栏按钮项的标题?

python - 如何通过字典值搜索包含嵌套字典的列表,并返回包含字典元素的列表的索引

java - 如何将流中的一个字符串映射到另一个字符串?

ios - 运行时加载 plist 的内容会崩溃 "many"次之一

swift - 错误: binary operator '+=' cannot be applied to two '[Int : String]' operands

swift - 如何在 Swift case 语句中分配变量