关于数组的遍历

转载 2011年01月12日 08:54:00

对于数组的遍历以前一直是使用递增的方式进行的,如for(int i=0;i<args.length;i++);但是今天看了一篇文章,上面说,使用递减的方式进行遍历数组效率更高,并且给出了一段代码作为测试,代码如下:

 

代码
public static void main(String args[]) {
int something = 2;
long startTime = System.currentTimeMillis();
for (int i = 0, n = Integer.MAX_VALUE; i < n; i++) {
something
= -something;
}
long midTime = System.currentTimeMillis();
for (int i = Integer.MAX_VALUE - 1; i >= 0; i--) {
something
= -something;
}
long endTime = System.currentTimeMillis();
System.out.println(
"Increasing Delta: " + (midTime - startTime));
System.out.println(
"Decreasing Delta: " + (endTime - midTime));
}

使用递减的方式遍历,比使用递增的方式遍历数组,快了1/3的时间。

(注:这个效率的提升在1.3版本以后的jdk里面才能显著表现出来)

 

这个效率的提升主要是节省了查询数组长度(args.length)的时间,实际上在大规模的数组遍历中,args.length会消耗很多的时间。

相关文章推荐

二维数组遍历

  • 2014年12月12日 10:11
  • 16KB
  • 下载

js数组遍历 千万不要使用for...in...

js数组遍历相信大家都不陌生,很多人会想到for循环和 for...in...循环,但是千万不要使用for...in...循环遍历数组,特别是如果你想写点有用的,能够移植的代码时。下面我们来看看这个可...

php数组遍历的类

  • 2016年07月01日 10:21
  • 652B
  • 下载

javascrip:遍历文件填充数组

  • 2010年04月03日 13:50
  • 763B
  • 下载

JSTL遍历数组,List,Set,Map等

http://blog.csdn.net/herrapfel/article/details/6184557
  • kouwoo
  • kouwoo
  • 2015年01月30日 14:28
  • 600

模拟数组的顺序遍历

  • 2017年07月29日 09:51
  • 1KB
  • 下载

02-Java基础(数组-常见操作-遍历

  • 2016年04月28日 13:22
  • 7.72MB
  • 下载

Mybatis动态Sql的Foreach遍历拼接输入参数中的List或数组

pojo、pojo包装类 public class User { private int id; private String username; private String sex; p...

C#数组遍历

  • 2013年10月13日 12:50
  • 26KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于数组的遍历
举报原因:
原因补充:

(最多只允许输入30个字)