使用字符串比较两个时间的大小

本文介绍了一种使用Objective-C计算两个日期之间的时间差的方法,并通过具体的示例代码展示了如何获取分钟数并转换为小时数,包括如何处理分钟到小时的转换逻辑。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


- (NSString *)compareStr1:(NSString *)str1 withStr2:(NSString *)str2{

    NSString *hour = nil;

    NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
    [formatter setDateFormat:@"yyyy-MM-dd HH:mm"];

    NSDate *date1 = [formatter dateFromString:str1];
    NSDate *data2 = [formatter dateFromString:str2];

    NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSCalendarIdentifierChinese];
    unsigned int usitFlags = NSCalendarUnitMinute;

    NSDateComponents *coms = [gregorian components:usitFlags fromDate:date1 toDate:data2 options:0];

    NSInteger minute = [coms minute];
    NSLog(@"minute- - - - -%ld",(long)minute);

    CGFloat hour1 = minute / 60;

    NSInteger hour2 = minute % 60;
    if (hour2 > 30) {
        hour1 = hour1 + 1;
    }
    else if (hour2 > 0 && hour2 <= 30){
        hour1 = hour1 + 0.5;
    }
    hour = [NSString stringWithFormat:@"%.1f",hour1];

    return hour;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值