IOS开发 根据某个日期计算是星期几

本文介绍如何在iOS开发中根据某个日期计算是星期几。作者分享了自己的实现思路,包括计算日期差、获取当前星期及如何推算目标日期的星期。代码分为三段,详细解释了每一步操作。请注意,此实现仅测试了未来的日期,未测试过去日期的情况。
摘要由CSDN通过智能技术生成

在自己的项目中有这个需求,在网上找了下,没有找到理想的结果,就东拼西凑的把大家的想法,集合在一起,加上自己的想法,实现了这个功能。

温馨提示:测试了将来某个日期是星期几,未测试过去的某个日期是星期几

实现思路

大概的实现方式和大家分享下,有不对的地方欢迎大家留言指教,相互学习

首先计算 未来的 某个日期 和 当前日期相差天数

在获取当前是星期几(返回结果如下格式)
1--星期天
2--星期一
3--星期二
4--星期三
5--星期四
6--星期五
7--星期六

最后在当前星期 基础上 加上 相差天数,就获取未来那个日期所对应的星期(此处可以将 (相差天数 % 7),结果就更加明了相差的天数(结果是0,说明未来的某个日期的星期就是对应当前的星期),7代表的一周共7天

实现代码

代码中本人已经写了很详细的说明,在这里就一一单独说了,代码分为3段,如下

第一段代码:

/**
 *  获取未来某个日期是星期几
 *  注意:featureDate 传递过来的格式 必须 和 formatter.dateFormat 一致,否则endDate可能为nil
 *
 */
- (NSString *)featureWeekdayWithDate:(NSString *)featureDate{
    // 创建 格式 对象
    NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
    // 设置 日期 格式 可以根据自己的需求 随时调整, 否则计算的结果可能为 nil
    formatter.dateFormat = @"yyyy-MM-dd";
    // 将字符串日期 转换为 NSDate 类型
    NSDate *endDate = [formatter dateFromString:featureDate];
    // 判断当前日期 和 未来某个时刻日期 相差的天数
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值