美文网首页iOS开发
OC中if-else与三目运算符的效率比较

OC中if-else与三目运算符的效率比较

作者: 悄然林静 | 来源:发表于2019-03-20 13:30 被阅读0次

结论写在最前面:
执行效率差别极小,甚至小于1/100000000s(亿分之一秒)。

核心代码:

NSString *time1 = [NSString mk_currentTimeStampInMiliseconds];
for (int i = 0; i < 100000000; i++) {
    cell.view.playButton.hidden = [self.imgSource[indexPath.row] valueForKey:@"videoPath"].length > 1 ? NO : YES;            
}
NSString *time2 = [NSString mk_currentTimeStampInMiliseconds];
for (int i = 0; i < 100000000; i++) {
    if ([self.imgSource[indexPath.row] valueForKey:@"videoPath"].length > 1) {
        cell.view.playButton.hidden = NO;
    } else {
        cell.view.playButton.hidden = YES;
    }
}
NSString *time3 = [NSString mk_currentTimeStampInMiliseconds];
NSLog(@"\ntime1 = %@\ntime2 = %@\ntime3 = %@\n", time1, time2, time3);

打印结果:


执行一亿次的时间

可以看到,同样循环执行一亿次的总时间,if-else仅比三目运算符快1s,更何况其中还有亿次级的取值、赋值操作。

相关文章

  • OC中if-else与三目运算符的效率比较

    结论写在最前面:执行效率差别极小,甚至小于1/100000000s(亿分之一秒)。 核心代码: 打印结果: 可以看...

  • OC小技巧

    一、OC更简便的使用三目运算符 我们都知道OC中三目运算符的基本格式 : (关系表达式) ? 表达式1 : 表达式...

  • From Objective-C to Ruby(1)-流程控制

    流程控制 判断 if···elsif···else··· OC: ruby: 三目运算符 OC: ruby: ca...

  • 09-GoLang流程控制

    选择结构if C语言中有三目运算符 ?: Go语言中没有,所有用三目解决的问题使用 if-else 来解决 C...

  • java学习day03-流程语句

    第三天学习内容: 内容: 总结: 1、选择结构 if-else结构与三元运算符区别 区别:if-else是控制...

  • 实用js

    1、单线 If-Else在 JavaScript 中,可以使用三元条件运算符来压缩 if-else 语句。例如: ...

  • dart4flutter – 02 –控制流 和异常

    控制流 If – else if-else 和其他语言一样比较简单。 可以用三元运算符代替if-else 循环 和...

  • 计算1+2+...+n

    编写函数求1+2+...+n的和,要求不能使用乘除、if-else、for、while、switch和三目运算符 ...

  • swift教程(2)

    swift的运算 加减乘除 三目运算符 与或关系 运算比较

  • swift基础语法(三)——逻辑分支

    逻辑分支主要包括: if语句 三目运算符 switch语句 guard if语句 和OC中if语句有一定的区别判断...

网友评论

    本文标题:OC中if-else与三目运算符的效率比较

    本文链接:https://www.haomeiwen.com/subject/ntrzmqtx.html