我已经基于原始NSArray中的NSDictionaries中的keyValue创建了NSArrays的NSDictionary。但是我有一个问题,原始NSDictionary中的值都是字符串,但包含数字。
这是一个问题的原因是因为我的排序NSMutableArray看起来像这样
1
2
3
4
5
6
7
8
9
10
11
12
... etc
问题是它被分类到像这样的数组的NSDictionary
1
10
11
12
2
3
4
5
6
7
8
9
我想知道如何保持在NSDictionaries的原始NSMutableArray中找到的原始订单?
这就是我创建数组的NSDictionary的方法。
NSMutableDictionary *sortedDictionaryArraysForTableView = [NSMutableDictionary dictionary];
for (NSDictionary *dict in xmlMArray) {
NSString *currentNumberString = [dict objectForKey:@"Number"];
if(![[sortedDictionaryArraysForTableView allKeys] containsObject:currentNumberString])
sortedDictionaryArraysForTableView[currentNumberString] = [NSMutableArray array];
[sortedDictionaryArraysForTableView[currentNumberString] addObject:dict];
}
答案 0 :(得分:1)
NSDictionary是一个无序集合。将内容存储在字典中时,您无法保留原始顺序(或任何顺序)。对于有序集合,您需要NSArray或NSOrderedSet。