0

我想在不检查所有键/值的情况下检查字典内容是否发生了变化。背景是我的应用程序经常收到NSUserDefaultsDidChangeNotification由于一些额外的库访问NSUserDefaults. 我自己的默认值存储在默认值中的一个字典中。

在启动时从 userdefaults 读取值,但不会在本地存储,因此我无法比较它们。我正在考虑的是在启动时为所有值生成一个哈希值并将该值存储在某处,每次收到通知时,我都会再次生成哈希值并将其与在内部分发通知之前存储的哈希值进行比较。

但可能有更简单的方法?!

4

1 回答 1

1

听起来这将是最简单的方法。更长的方法是创建一个NSMutableSet原始值,然后创建一个NSMutableSet更改后的值。 NSSetminusSet:方法然后会给你增量。但这听起来比仅仅列举字典要繁重得多......

于 2012-09-12T07:22:11.583 回答