ArrayList的不同的遍历方式性能比较,其实都差不了多少
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ArrayList的不同的遍历方式性能比较,其实都差不了多少相关的知识,希望对你有一定的参考价值。
//RadomAcess的接口for..i的遍历比for..loop的快,@more see comments for interface RandomAcess
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class ListPerformanceTest {
public static void main(String[] args) {
List<String> list = new ArrayList<>();
for(int i = 0; i < Integer.MAX_VALUE / 200; i++) {
list.add("1");
}
long d1 = System.currentTimeMillis();
/***************** fastest ************************/
// for(int i = 0, n = list.size(); i < n; i++) {
// list.get(i);
// }
/***************** second fastest due to each loop would get the list size ************************/
// for(int i = 0; i < list.size(); i++) {
// list.get(i);
// }
/***************** not know why this is faster than the last ************************/
// for(Iterator<?> it = list.iterator(); it.hasNext();) {
// it.next();
// }
// for(String s : list) {
// if(s != null) {
// continue;
// }
// }
System.out.println("Times(ms):" + (System.currentTimeMillis() - d1));
}
}
以上是关于ArrayList的不同的遍历方式性能比较,其实都差不了多少的主要内容,如果未能解决你的问题,请参考以下文章