誰かが私にソートする方法を教えてくれるかどうか疑問に思いましたNSDictionary
; キーは日付+時刻であり、に追加できるようにしたいので、最後のエントリから読みたいですNSMutableString
。列挙子を使用して読み取ることができましたが、希望する結果が得られません。
ありがとう
誰かが私にソートする方法を教えてくれるかどうか疑問に思いましたNSDictionary
; キーは日付+時刻であり、に追加できるようにしたいので、最後のエントリから読みたいですNSMutableString
。列挙子を使用して読み取ることができましたが、希望する結果が得られません。
ありがとう
要件に合わせて、最も簡単な方法は、キーから新しい配列を作成し、それを並べ替えてから、その配列を使用して元の辞書の項目を参照することです。
(myComparisonは、2つのキーを比較する独自のメソッドであることに注意してください)。
NSMutableArray* tempArray = [NSMutableArray arrayWithArray:[myDict allKeys]];
[tempArray sortedArrayUsingSelector:@selector(myComparison:)];
for (Foo* f in tempArray)
{
Value* val = [myDict objectForKey:f];
}
NSDictionary をアルファベット順にソートする非常にコンパクトなものにソートすることに関する StackOverflow に関する他のいくつかの提案をまとめました。「パス」に 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 );
}