簡體   English   中英

NSArray中的NSDictionary

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM