当前位置:首页 » 软件行业

arraylist.iterator 去遍历和size=arraylist.size();for(int k=0k<size;k++){...}去遍历数据,性能相比如何?

八月 3, 2007

 发表在: java



arraylist.iterator().hasnext()   去遍历和size=arraylist.size();for(int   k=0k<size;k++){...}去遍历数据,性能相比如何?

电脑软件技术推荐:

  • 用C#编写发手机中文短信息Windows服务[详细内容]
  • 用JavaMail API编写可带附件的邮件发送程序[详细内容]
  • 用VC编写具有动态换肤功能的应用程序[详细内容]
  • 用PB编写WinSock TCP/IP应用程序[详细内容]
  • Delphi编写后台监控软件[详细内容]
  • 如何用PHP调用自己编写的COM组件?[详细内容]
  • Dreamweaver MX新功能(2):方便的代码编写[详细内容]
  • 17岁少女用C#语言编写的Sharpei病毒登场[详细内容]
  • Foxmail编写者张小龙:在婆家渐入佳境[详细内容]
  • 用C++Builder编写发送电子邮件软件[详细内容]
  • 相关提议:
    发表者:yzhou_swnu

    我觉得还是要看iterator接口是如何实现的吧,不过应该效率上不会有问题,而且用iterator接口进行枚举有利于代码的移植。

    发表者:hawaii_wx

    arraylist.iterator().hasnext()   去遍历和size=arraylist.size();for(int   k=0k<size;k++){...}去遍历数据,性能相比如何?  
      回答:绝对是前者的效率高,你可以做个试验,在arraylist里面放100w个对象分别用你的2种方法遍历,这时的效果不用写计算遍历的时间的代码就可以用肉眼看出来,如果写计算时间的遍历代码可以只放1w个对象进去,遍历出来的效果好像就不一样,  
      原因:iterator是一次把容器里面的对象都提取出来,然后遍历的,而for的每次循环都生成一个iterator并且这个iterator里面只有当前循环到的对象,所以这种效率比iterator遍历的慢很多!

    .

    No comments in this entry


    Post a Comment »

    Logged in

    Advertising

    Categories

    相关文章