我想知道如果有人能告訴我如何排序NSDictionary
;我想從最後一項開始讀取它,因爲關鍵是Date + Time,我希望能夠將它附加到NSMutableString
。我能夠使用枚舉器讀取它,但我沒有得到我想要的結果。排序NSDictionary
感謝
我想知道如果有人能告訴我如何排序NSDictionary
;我想從最後一項開始讀取它,因爲關鍵是Date + Time,我希望能夠將它附加到NSMutableString
。我能夠使用枚舉器讀取它,但我沒有得到我想要的結果。排序NSDictionary
感謝
您的要求最簡單的方法是創建密鑰的新陣,那種,然後使用數組從原來的字典引用的項目。
(注意myComparison是你自己的方法,將比較兩個鍵)。
NSMutableArray* tempArray = [NSMutableArray arrayWithArray:[myDict allKeys]];
[tempArray sortedArrayUsingSelector:@selector(myComparison:)];
for (Foo* f in tempArray)
{
Value* val = [myDict objectForKey:f];
}
我已經聚集了一些StackOverflow上的其他建議排序上一個NSDictionary到的東西非常緊湊,即會按字母順序排序。我在'路徑'中有一個Plist文件,我將其加載到內存中並希望轉儲。
NSDictionary *glossary = [NSDictionary dictionaryWithContentsOfFile: path];
NSArray *array1 = [[glossary allKeys] sortedArrayUsingDescriptors:@[ [NSSortDescriptor sortDescriptorWithKey:@"" ascending:YES selector:@selector(localizedStandardCompare:)] ]];
for (int i=0; i<array1.count; i++)
{
NSString* key = [array1 objectAtIndex:i];
NSString* value = [glossary objectForKey:key];
NSLog(@"Key=%@, Value=%@", key, value);
}