当前位置:首页 » 软件行业
用C#编写发手机中文短信息Windows服务[详细内容] 用JavaMail API编写可带附件的邮件发送程序[详细内容] 用VC编写具有动态换肤功能的应用程序[详细内容] 用PB编写WinSock TCP/IP应用程序[详细内容] Delphi编写后台监控软件[详细内容] 如何用PHP调用自己编写的COM组件?[详细内容] Dreamweaver MX新功能(2):方便的代码编写[详细内容] 17岁少女用C#语言编写的Sharpei病毒登场[详细内容] Foxmail编写者张小龙:在婆家渐入佳境[详细内容] 用C++Builder编写发送电子邮件软件[详细内容] 相关提议:
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++){...}去遍历数据,性能相比如何?
电脑软件技术推荐:
发表者: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