gpt4 book ai didi

ios - 如何: sort NSArray by date in descending order with nil date left on top of result set

转载 作者:行者123 更新时间:2023-11-28 18:59:27 26 4
gpt4 key购买 nike

我有以下方法,其中 self.orderHeader.meetings 是核心数据 NSManagedObject, session 是 session 列表。该方法按日期 (meetingDate) 对 session 进行排序:

- (NSArray *)sortMeetingList {
return [[self.orderHeader.meetings allObjects] sortedArrayUsingDescriptors: [NSArray arrayWithObject: [NSSortDescriptor sortDescriptorWithKey:@"meetingDate" ascending:NO]]];
}

对于没有设置 session 日期的 session 对象,它返回我想要的除外。这些留在列表的底部,但是(按降序排列)我想让它们显示在列表的顶部:

例如:[nil, 2014-12-29, 2014-12-24] 而不是 [2014-12-29, 2014-12-24, nil]

有没有简单的方法可以做到这一点??

最佳答案

尝试这样的事情:

NSArray *sortedMeetings = [unsortedMeetings sortedArrayUsingComparator:^NSComparisonResult(MeetingObjectClass *obj1, MeetingObjectClass *obj2) {
if (!obj1.meetingDate)
return NSOrderedAscending;
if (!obj2.meetingDate)
return NSOrderedDescending;
return [obj2.meetingDate compare:obj1.meetingDate];
}];

关于ios - 如何: sort NSArray by date in descending order with nil date left on top of result set,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27695595/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com