2013-05-08 49 views
1

有誰知道是否定義使用enumerateKeysAndObjectsUsingBlock在NSDictionary上的順序?我的實驗表明它與添加的東西順序相同,但是我不能100%確定&我不希望它被破壞......找不到任何告訴我的東西。enumerateKeysAndObjectsUsingBlock - 詞典中的條目順序?

+0

順序無法保證,但爲了保持字典對象的順序,您可以添加一個名爲'orderIndex'的附加關鍵字並按照'orderIndex'排序您的字典,其他選項是使用NSOrderSet,但不允許重複值 – 2013-05-08 14:31:21

回答

4

訂單沒有定義。那是怎樣的一組行爲和一本字典是相當接近秒......

,以確保順序讓你有使用排序屬性,當你拿到鑰匙,結果數組排序

或使用OrderedDictionary ....還有那漂浮在谷歌的一些實現,但基本上它僅僅是一個的NSDictionary +的鑰匙在一個穩定的秩序

一個很好的可可頭是一個NSArray

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

+0

感謝你們(對遲到的接受感到抱歉 - 已經不在了) - 我有點得出同樣的結論,並且會寫我自己的,但我會看看OrderedDictionary。 – SomaMan 2013-05-14 13:53:32