arrays - 比较两个数组字典是否相等
问题描述
我有以下类型的字典
[String : [String]]
在我的应用程序中,在运行时我请求更新包含上述类型字典的 var。我还在 CoreData 中存储了相同类型的字典。
我的问题是比较这两个字典是否相等的最佳方法是什么?我在想散列函数最适合这个,但不知道如何处理它
解决方案
我相信这个功能是 swift 4 原生的:
https://developer.apple.com/documentation/swift/dictionary/2430767
考虑到编译器将为您检查类型并保证密钥,这样的函数将起作用:
func compare(left:[String:[String]], right: [String:[String]]) -> Bool {
return left.keys == right.keys && left[left.keys.first!]! == right[right.keys.first!]!
}
但是,如果您出于某种原因想要遍历它,那么一种好方法是声明式的。
推荐阅读
- python - 如何迭代或递归确定二维数组中的邻居?
- javascript - 在javascript中分配地图坐标返回未定义
- java - org.springframework.beans.factory.BeanCreationException:创建名为“roleRepository”的bean时出错
- node.js - npm run scss 命令未运行
- php - laravel - 我可以将新项目添加到已经有一些现有项目的数组中吗?
- z3 - Z3:禁用数组模型的 lambda 函数
- flutter - 在使用 Mocktail 多次调用后模拟不同的答案和异常
- node.js - Salesforce Open CTI Socket 使用 socket.io 连接到 nodejs 服务器失败并出现 ping 超时
- c# - 如何在 Visual Studio 调试时进入 WPF 代码?
- python - 如何从 yfinance 获取特定时间和日期的 1 分钟价格数据?