针对三目运算符与if else的运行速度测试

针对三目运算符以及if else的运行时间做了一个简单的测试,发现在多次测试结果中:

       三目运算符在时间上远远大于if else(纳秒为单位)。

贴上代码:

        //获取开始时间
        long startTime=System.nanoTime();

        //测试的代码段
        StringBuilder stringBuilder = new StringBuilder("One");
        //三目运算符
        System.out.println(stringBuilder.equals("456")?stringBuilder.append("One"):stringBuilder.append("Two"));

        //获取结束时间
        long endTime=System.nanoTime();

        System.out.println("三目运算符程序运行时间: "+(endTime-startTime)+"ns");

        //获取开始时间
        long startTimeOne = System.nanoTime();

        //测试的代码段
        StringBuilder stringBuilderOne = new StringBuilder("One");

        if (stringBuilderOne.equals("456")){
            stringBuilderOne.append("One");
        }else {
            stringBuilderOne.append("Two");
        }
        System.out.println(stringBuilderOne);

        //获取结束时间
        long endTimeOne = System.nanoTime();

        System.out.println("if else程序运行时间: "+(endTimeOne-startTimeOne)+"ns");

运行时间对比example:

之后查阅他人资料--引用

分析:这只是简单的判断,我们发现三元运算符在对简单的逻辑判断的代码量比if判断结构少,提高了复用性,并且iif判断语句只是单纯的判断并输出结果判断后的结果,而三元运行符,发生了运算符的赋值动作,也就是运算,而if判断结构没有,简单来说就是三元运算符有运算结果,而if判断结果没有运算结果,如果是相对复杂的逻辑判断,三元运算符则不能替代if判断结果,反之如果是简单的逻辑判断三元运算符更加简洁,根据不同情况来选择。
--------------------- 
来源:CSDN 
原文:https://blog.csdn.net/qq1723205668/article/details/51661187 

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值