簡體   English   中英

對NSMutable字典的NSMutable數組進行排序

[英]Sorting an NSMutable Array of NSMutable dictionaries

我是Iphone開發人員,並且是該技術的新手。 我想對NSMutableArray進行排序。 在此數組的每個索引處,都有一個NSMutableDictionary 每個詞典都有兩個字段:名稱和日期。 我想根據此Date字段對數組進行排序。 我的數組如下所示:

(
   {
       name :  raj
       date  : 20/09/1998
   }
   {
       name : teena
       date : 21/06/1987
   }
)

我在網上進行了大量搜索,但找不到任何合適的答案。 請幫助我。 任何回應將不勝感激。

NSSortDescriptor *sortDescriptor;
sortDescriptor = [[[NSSortDescriptor alloc] initWithKey:@"date"
                                              ascending:YES] autorelease];
NSArray *sortDescriptors = [NSArray arrayWithObject:sortDescriptor];
self.sortedArray = [self.originalArray sortedArrayUsingDescriptors:sortDescriptors];

如果您的日期鍵實際上包含一個日期對象,並且包含一個字符串形式的日期,則此方法應該起作用。

[resultArray sortUsingComparator:^NSComparisonResult(id a, id b) {

    static NSDateFormatter *dateFormatter = nil;

    if (!dateFormatter) {
        dateFormatter = [[NSDateFormatter alloc] init];
        dateFormatter.dateFormat = @"mm/dd/yyyy hh:mm:ss"; 
    }

    NSString *date1String = [a valueForKey:@"StartDate"];
    NSString *date2String = [b valueForKey:@"StartDate"];

    NSDate *date1 = [dateFormatter dateFromString:date1String];
    NSDate *date2 = [dateFormatter dateFromString:date2String];

    return [date1 compare:date2];
    }];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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