我有一个NSArrayof ,NSDictionaries在其中我从.NSArrayNSStringsNSDictionary
然后我试图对两者进行排序,但我得到的结果略有不同。
很NSDictionary简单
NAME
Number
我是第一个并使用字典的NAME元素NSArray创建一个新的。NSArray
然后我像这样对第一个数组进行排序
NSSortDescriptor * descriptor = [[NSSortDescriptor alloc] initWithKey:@"NAME" ascending:YES]; // 1
sortedByNameArray = [dataArrayOfDictionaries sortedArrayUsingDescriptors:[NSArray arrayWithObject:descriptor]];
然后我取第二个数组,它与第一个数组排序之前的顺序完全相同,并像这样排序
// sorts nicknames
newSortedArray = [nameOnlyArray sortedArrayUsingSelector:@selector(localizedCaseInsensitiveCompare:)];
尽管两个数组都是按字母顺序排序的,但localizedCaseInsensitiveCompare:似乎在排序方面做得很好,就像我的另一个sortedArrayUsingDescriptors:似乎只使用第一个字母排序,所以它没有真正排序。
我需要一些帮助来申请localizedCaseInsensitiveCompare字典.. 但考虑到您必须访问第NSArray一个 NAME 中的每个元素,我不确定如何执行此操作。NSDictionaryNSArray
任何帮助将不胜感激。