[英]NSDictionary within NSArray
關於NSArrays和NDictionarys的快速問題。
我有和NSArray包含NSDictionarys。 NSDictionary包含日期和字符串。
我想要做的是最終得到一個NSDictionary,其中包含鍵日期和值日期的字符串數組。
什么是最好的方法來做到這一點
由於我沒有看到任何合理的動機,我們稱之為代碼高爾夫。
NSMutableArray *dates = [NSMutableArray array];
NSMutableArray *strings = [NSMutableArray array];
for (NSDictionary *dict in dictArray) {
[dates addObject:[dict objectForKey:@"date"]];
[strings addObject:[dict objectForKey:@"string"]];
}
NSArray *datesArray = [[NSArray alloc] initWithArray:dates];
NSArray *stringsArray = [[NSArray alloc] initWithArray:strings];
NSMutableDictionary *result = [NSMutableDictionary dictionary];
for (NSDictionary *dict in array) {
NSDate *date = [dict objectForKey:@"dateKey"];
NSString *string = [dict objectForKey:@"stringKey"];
NSMutableArray *stringsWithDate = [result objectForKey:date];
if (!stringsWithDate) {
stringsWithDate = [NSMutableArray array];
[result setObject:stringsWithDate forKey:date];
}
[stringsWithDate addObject:string];
}
請注意, NSDate
不是“日歷日期”,因此具有不同時間的同一天將被視為結果字典中的不同日期。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.