普通for循环与增强for循环效率对比

开发中经常用到for循环,但是到底选择那一个效率更高,可能让有些同学出现纠结,给人感觉好像是增强for循环效率高,

但是。。。。猜测总是没法让人不放心,

千猜万猜还不如,动手做个测试,证明下,

测试步骤如下

1、定义一个对象,

@Data
public class Car {
    private String name;
    private Integer price;
    private String color;
    private Integer size;
}

2、用一个普通for循环往list里增加对象

        int tempSize = 100*100*100*100;

        List<Car> list = new ArrayList<Car>();
        for (int i = 0; i< tempSize;i++ ) {
            Car car = new Car();
            car.setSize(i);
            list.add(car);
        }

3、再用普通for循环和增加for循环取出list中的对象,并记录总耗时

   System.out.println("===============");
    System.out.println("普通for循环");
    System.out.println(System.currentTimeMillis());
    for (int i = 0;i<list.size();i++) {
        list.get(i).getSize();
    }
    System.out.println(System.currentTimeMillis());
    System.out.println("===============");


    System.out.println("===============");
    System.out.println("增强for循环");
    System.out.println(System.currentTimeMillis());
    for (Car car : list) {
        car.getSize();
    }
    System.out.println(System.currentTimeMillis());
    System.out.println("===============");

结果如下

===============
普通for循环
1557717515954
1557717516347

总花费 393

===============
增强for循环
1557717516348
1557717516711
总花费 353

==========================

4、上面是两个循环是一个方法里执行的,可能会互相干扰,下面我们分开方法执行

一次只记录一次for循环的费时

结果如下

===========
普通for循环
1557804229133
1557804229520
总耗时 387

===============

===============
增强for循环
1557804537568
1557804538024
总耗时 456

===============

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值