在JSON中 通过[JSONvalue]在NSMutableDictionary中解析时,响应字符串和数据顺序中的数据顺序是否不同? 我希望响应中的顺序字符串和响应字典应该相同。
答案 0 :(得分:0)
字典不是基于键排序的,这样做可能很麻烦。 我通常按照以下方式解决:
NSMutableDictionary *dataDict = [[NSDictionary dictionaryWithContentsOfFile:finalPath] retain];
NSArray *sortedKeys = [[[statesDictionary allKeys] sortedArrayUsingSelector:@selector(localizedCaseInsensitiveCompare:)] retain];
使用sortedKeys
访问dataDict以获取正确的数据。
答案 1 :(得分:0)
根据定义,NSDictionary中元素的顺序是未定义的,因此您无法迭代元素并期望它们按特定顺序排列。
简易方法是将密钥保存在单独的NSArray中。有关更强大的解决方案,请参阅this答案。