OStack程序员社区-中国程序员成长平台

标题: ios - NSMutableDictionary 对键中的值进行排序 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 06:07
标题: ios - NSMutableDictionary 对键中的值进行排序

我有一个 NSMutableDictionary:

NSMutableDictionary = {
    "03-19" = (
            "Movie1", 
            "Movie2", 
            "Movie3"
        );
    "03-20" = (
            "Movie1"
        );
    "03-21" = (
            "Movie1", 
            "Movie2"
        );
}

电影对象具有时间值(value)。我需要按 Movie.timeString 对每个键的值进行排序。我该怎么做?



Best Answer-推荐答案


值-键对在存储在 NSDictionaryNSMutableDictionary 中时没有特定顺序。

您可以通过迭代每个键来重新编写代码, 然后迭代地对值(存储为 NSArray/NSMutableArray 对象,我假设)进行排序。 假设它确实是一个 NSMutableDictionary *dict

for(NSString *key in [dict allKeys])
{
NSArray *arrTimes = [dict objectForKey:key];

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat"hh:mm a"];

NSArray *arrSortedTimes = [arrTimes sortedArrayUsingComparator:^NSComparisonResult(NSString *obj1, NSString *obj2)
{
    NSDate *date1 = [dateFormatter dateFromStringbj1];
    NSDate *date2 = [dateFormatter dateFromStringbj2];
    return [date1 compare:date2];
}];

[dict setObject:arrSortedTimes forKey:key];
}

你可以试试这段代码,如果你有任何问题,请告诉我。

关于ios - NSMutableDictionary 对键中的值进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29343988/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4