gpt4 book ai didi

ios - 有什么方法可以使用星期几的谓词来过滤日期数组吗?

转载 作者:行者123 更新时间:2023-11-28 23:42:40 25 4
gpt4 key购买 nike

我有一个数组,其中包含具有 NSDate 属性的自定义对象。我想以某种方式获取 NSDate 为星期日、星期一、星期二等的所有对象。

我觉得使用谓词不可能做到这一点,但希望我错了,希望有一种方法无需遍历所有对象、获取日期、使用日期格式化程序转换它们,然后计算出日期。

p>

最佳答案

我认为谓词代码的 block 方法来完成这项任务会更可行。

这是我的代码

    NSPredicate *pred = [NSPredicate predicateWithBlock:^BOOL(Object * _Nullable evaluatedObject, NSDictionary<NSString *,id> * _Nullable bindings) {

NSCalendar* cal = [NSCalendar currentCalendar];
NSDateComponents* comp = [cal components:NSCalendarUnitWeekday fromDate:evaluatedObject.mDate];
NSInteger weekDay = [comp weekday]; // 1 = Sunday, 2 = Monday, etc.

return weekDay == 4;
}];

NSArray *arrFilteredObject = [arrData filteredArrayUsingPredicate:pred];

Object 是我的自定义对象类,它包含两个字段,即一个 NSString 和一个 NSDate 属性。

这是我的对象类供您引用

@interface Object : NSObject

@property (nonatomic, strong) NSString *title;
@property (nonatomic, strong) NSDate *mDate;

@end

希望对您有所帮助。如果您在使用此方法时遇到任何问题,请告诉我。

关于ios - 有什么方法可以使用星期几的谓词来过滤日期数组吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53095510/

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