ios - 单个密钥与在NSUserDefaults中存储结构化数据

时间:2015-07-15 15:35:08

标签: ios

我在游戏中有100个级别,例如,我希望存储完成率(%)和高分(int)

使用NSUserDefaults完成它的最佳方法是什么?

我应该使用个人密钥吗

"levelCompletion%number%", "levelHighscore%number%"

或者以某种方式存储集合

"levelInfo%number%"

例如,levelInfo键的对象是NSDictionary。

哪种方式更有效?

1 个答案:

答案 0 :(得分:0)

我会为每个级别创建一个包含所有键的字典,而没有/ empty / NSNumber(0)值。这样当默认值被假脱机时,所有100个都将在那里进行检查,尽管通常大多数都是“0”。

这里没有效率问题,这在存储方面是微不足道的,应该是任何过早优化列表的底部!