java循环遍历(增强for循环、forEach)

遍历一个List有如下几种方法

方式1:

public static void test1(List<String> list) {
  for (int i = 0; i < list.size(); i++) {
    System.out.println(list.get(i));
  }
}

方式2:

public static void test2(List<String> list) {
  for (int i = 0,lengh=list.size(); i < lengh; i++) {
    System.out.println(list.get(i));
  }
}

方式3 Iterator遍历:

public static void test3(List<String> list) {
  Iterator<String> iterator = list.iterator();
  while(iterator.hasNext()){
    System.out.println(iterator.next());
  }
}

方式4 增强for循环 java5引入:

public static void test4(List<String> list) {
  for(String str:list){
    System.out.println(str);
  }
}

方式5 forEach java8引入:

public static void test5(List<String> list) {
  //list.forEach(System.out::println);和下面的写法等价
  list.forEach(str->{
    System.out.println(str);
  });
}

方式6 同样java8引入:

public static void test6(List<String> list) {
  list.iterator().forEachRemaining(str->{
    System.out.println(str);
  });
}

出处:https://www.cnblogs.com/yiwangzhibujian/p/6919435.html

 


在数据量不大的时候(List中元素不多的时候)几种方式的性能差别不大,大的话后面引入的几种方式会更优秀一点。

理论上增强for循环底层由Iterator实现,应该性能差不太多?

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值