1

有谁知道是否定义了在 NSDictionary 上使用 enumerateKeysAndObjectsUsingBlock 的枚举顺序?我的实验表明它与添加东西的顺序相同,但我不能 100% 确定并且我不希望它破坏......在任何地方都找不到任何告诉我的东西。

4

1 回答 1

4

订单根本没有定义。这就是集合的行为方式,而字典非常接近秒...

为确保保持顺序,您使用了可排序属性,当您获得键时,对结果数组进行排序

或者使用 OrderedDictionary .... google 上有一些实现,但基本上它只是一个 NSDictionary + 一个 NSArray ,键的顺序是稳定的

一个很好的可可头

https://github.com/davedelong/CHDataStructures/blob/master/source/CHOrderedDictionary.h https://github.com/davedelong/CHDataStructures/blob/master/source/CHOrderedDictionary.m

于 2013-05-08T18:36:53.917 回答