一个完整的遍历速度测试
2011-01-09 13:13
267 查看
一个完整的遍历速度测试:
以下是 3 组测试结果:
BatchFile code
import java.util.Iterator; import java.util.List; import java.util.ArrayList; import java.util.LinkedList; /** * IteratorTest * @author SageZk */ public class IteratorTest { public static long testForloops(List<String> list) { long start = 0L, end = 0L; @SuppressWarnings("unused") String le = null; start = System.nanoTime(); for (int i = list.size() - 1; i >= 0; --i) { le = list.get(i); } end = System.nanoTime(); return end - start; } public static long testIterator(List<String> list) { long start = 0L, end = 0L; @SuppressWarnings("unused") String le = null; start = System.nanoTime(); Iterator<String> it = list.iterator(); while (it.hasNext()) { le = it.next(); } end = System.nanoTime(); return end - start; } public static void main(String[] args) { //测试列表长度 final int LEN = 10000; //初始化测试用数据 List<String> arraylist = new ArrayList<String>(); List<String> linkedlist = new LinkedList<String>(); for (int i = 0; i < LEN; ++i) { String s = Integer.toString(i, 2); arraylist.add(s); linkedlist.add(s); } //打印测试结果 final String FORMAT = "%1$-16s%2$-16s%3$16d/n"; System.out.println("List/t/tType/t/tTime(nanoseconds)"); System.out.println("-------------------------------------------------"); System.out.printf(FORMAT, "ArrayList", "for", testForloops(arraylist)); System.out.printf(FORMAT, "ArrayList", "Iterator", testIterator(arraylist)); System.out.printf(FORMAT, "LinkedList", "for", testForloops(linkedlist)); System.out.printf(FORMAT, "LinkedList", "Iterator", testIterator(linkedlist)); } }
以下是 3 组测试结果:
BatchFile code
List Type Time ( nanoseconds ) ------------------------------------------------- ArrayList for 1189258 ArrayList Iterator 2365594 LinkedList for 152396254 LinkedList Iterator 2340801 List Type Time ( nanoseconds ) ------------------------------------------------- ArrayList for 1235701 ArrayList Iterator 4249982 LinkedList for 149825606 LinkedList Iterator 2525531 List Type Time ( nanoseconds ) ------------------------------------------------- ArrayList for 1198267 ArrayList Iterator 2584617 LinkedList for 150382451 LinkedList Iterator 2347994
相关文章推荐
- 一个完整的遍历速度测试--遍历list元素,用iterator() ,hasNext()与for的区别
- selenium一个完整的unittest测试框架格式(单线程,非测试报告)
- 一个测试浏览器速度的网站
- 一个简单精确的asp速度测试程序
- 性能测试:一个完整的性能测试过程
- 一个完整的linux 驱动demo 加应用测试 demo
- 续写一个二叉树的完整实现――前序・中序・后序・测试
- 一个测试下载速度的shell脚本
- 速度优化:只加载一个CSS满足所有要求、针对不同浏览器加载不同CSS、正式站改版测试如何不影响用户体验
- 芯片测试太耗时?新一代TetraMAX II工具将运行速度提高一个数量级
- 一个完整系统的测试过程
- selenium一个完整的unittest测试框架格式(单线程,非测试报告)
- 一个完整利用InternetOpen等系列函数进行下载的测试例子
- 哪种遍历NSArray/NSDictionary方式快?——一个容器遍历测试
- 如何编写一个完整全面的测试用例
- 关于“用Python和OpenCV创建一个图片搜索引擎的完整指南”在win7操作系统python3.6环境下的测试探索
- 一个完整的EEPROM 测试程序,用宏晶的下载板可以直接测试
- android UiAutomator一个完整的个人信息修改测试用例
- 把一个数组的值存入二叉树中,然后进行3种方式的遍历(完整代码)
- 一个计算机爱好者的不完整回忆(四十一)一次无聊的测试