• iOS实用小工具


    .计算时间间隔多少秒,可以使用到计算程序代码执行时间

    方式1:

        CFTimeInterval begin = CFAbsoluteTimeGetCurrent();
        for (NSInteger i = 0; i< 5000; i++) {
            NSLog(@"123456");
        }
        CFTimeInterval end = CFAbsoluteTimeGetCurrent();

    方式2:

        NSDate *begin = [NSDate date];
        for (NSInteger i = 0; i< 5000; i++) {
            NSLog(@"123456");
        }
        NSDate *end = [NSDate date];
        
        NSLog(@"%f",[end timeIntervalSinceDate:begin]);

    方式3:

    NSTimeInterval start = [[NSDate date] timeIntervalSince1970]*1;
        for (NSInteger i = 0; i< 5000; i++) {
            NSLog(@"------%ld",i);
        }
        NSTimeInterval end = [[NSDate date] timeIntervalSince1970]*1;
        NSTimeInterval value = end - start;
        int second = (int)value %60;//
        int minute = (int)value /60%60;
        int house = (int)value / (24 * 3600)%3600;
        int day = (int)value / (24 * 3600);
        NSString *str;
        if (day != 0) {
            str = [NSString stringWithFormat:@"耗时%d天%d小时%d分%d秒",day,house,minute,second];
        }else if (day==0 && house != 0) {
            str = [NSString stringWithFormat:@"耗时%d小时%d分%d秒",house,minute,second];
        }else if (day== 0 && house== 0 && minute!=0) {
            str = [NSString stringWithFormat:@"耗时%d分%d秒",minute,second];
        }else{
            str = [NSString stringWithFormat:@"耗时%d秒",second];
        }
        return str;

    计算N天前日期

    /**
     获取指定天数前的日期
    
     @param beforeDay 多少天之前
     */
    - (NSString *)getDateBeforeDay:(NSInteger)beforeDay{
        NSDateFormatter *dateFormat = [[NSDateFormatter alloc]init ] ;
        [dateFormat setDateFormat:@"yyyy-MM-dd"] ;
        
        NSString *localDateStr = @"";
        BOOL isSystem = YES;//[ZTEConfigrationList currAppTimeZone]; 是否是系统时区
        if (!isSystem) {
            //获取本地时间
            [dateFormat setTimeZone:[NSTimeZone timeZoneWithName:@"Asia/Hong_Kong"]];
            localDateStr = [dateFormat stringFromDate:[NSDate date]];
        } else {
            localDateStr = [dateFormat stringFromDate:[NSDate date]] ;
        }
        
        NSDate *date = [dateFormat dateFromString:localDateStr];
        
        //计算day天以前时间
        NSDate *someDaysAgoDate = [NSDate dateWithTimeInterval:-(beforeDay-1) * 24 * 60 * 60 sinceDate:date];
        return [dateFormat stringFromDate:someDaysAgoDate];
    }

    当前2017-09-16 运行结果: 2017-09-18

  • 相关阅读:
    共享内存
    利用消息队列实现ECHO_SRV
    LINUX学习:System V消息队列
    linux:利用socketpair来在进程间传递描述符
    react传参
    ajax、axios、fetch
    js 深拷贝和浅拷贝实现
    css----px、rem、em、vw、vh、vm
    Sass、Less 和 Stylus区别
    箭头函数和普通函数对比
  • 原文地址:https://www.cnblogs.com/HJiang/p/7425938.html
Copyright © 2020-2023  润新知