浅谈Java中几个常用集合添加元素的效率
程序员文章站
2024-02-25 23:13:27
初始化需要进行比较的集合,统一增加10万个元素,获取整个过程的执行时间。
1、list集合增加元素
private static void testlist()...
初始化需要进行比较的集合,统一增加10万个元素,获取整个过程的执行时间。
1、list集合增加元素
private static void testlist() { list<integer> list = new arraylist<integer>(); long starttime = system.currenttimemillis(); // 获取开始时间 for (int i = 0; i < 100000; i++) { list.add(i); } long endtime = system.currenttimemillis(); // 获取结束时间 system.out.println("list添加元素程序运行时间为:" + (endtime - starttime) + "ms"); // 输出程序运行时间 }
程序输出:
list添加10万个元素程序运行时间为:8ms
2、set集合增加元素
private static void testset() { set<integer> set = new hashset<integer>(); long starttime = system.currenttimemillis(); // 获取开始时间 for (int i = 0; i < 100000; i++) { set.add(i); } long endtime = system.currenttimemillis(); // 获取结束时间 system.out.println("set添加10万个元素程序运行时间为:" + (endtime - starttime) + "ms"); // 输出程序运行时间 }
程序输出:
set添加10万个元素程序运行时间为:17ms
3、linkedlist集合增加元素
private static void testlinkedlist() { list<integer> list = new linkedlist<integer>(); long starttime = system.currenttimemillis(); // 获取开始时间 for (int i = 0; i < 100000; i++) { list.add(i); } long endtime = system.currenttimemillis(); // 获取结束时间 // 输出程序运行时间 system.out.println("linkedlist添加10万个元素程序运行时间为:" + (endtime - starttime) + "ms"); }
程序输出:
linkedlist添加10万个元素程序运行时间为:8ms
4、treeset集合增加元素
private static void testtreeset() { set<integer> set = new treeset<integer>(); long starttime = system.currenttimemillis(); // 获取开始时间 for (int i = 0; i < 100000; i++) { set.add(i); } long endtime = system.currenttimemillis(); // 获取结束时间 // 输出程序运行时间 system.out.println("treeset添加10万个元素程序运行时间为:" + (endtime - starttime) + "ms"); }
程序输出:
treeset添加10万个元素程序运行时间为:40ms
总结:在不考虑去重和排序的情况下,以上几个常用集合的执行效率排序为:arraylist >= linkedlist > hashset > treeset
5、hashmap集合增加元素
private static void testhashmap() { map<integer, object> hashmap = new hashmap<integer, object>(); long starttime = system.currenttimemillis(); // 获取开始时间 for (int i = 0; i < 100000; i++) { hashmap.put(i, "test"); } long endtime = system.currenttimemillis(); // 获取结束时间 // 输出程序运行时间 system.out.println("hashmap添加10万个元素程序运行时间为:" + (endtime - starttime) + "ms"); }
程序输出:
hashmap添加10万个元素程序运行时间为:17ms
6、treemap集合增加元素
private static void testtreemap() { map<integer, object> treemap = new treemap<integer, object>(); long starttime = system.currenttimemillis(); // 获取开始时间 for (int i = 0; i < 100000; i++) { treemap.put(i, "test"); } long endtime = system.currenttimemillis(); // 获取结束时间 // 输出程序运行时间 system.out.println("treemap添加10万个元素程序运行时间为:" + (endtime - starttime) + "ms"); }
程序输出:
treemap添加10万个元素程序运行时间为:40ms
总结:在不考虑排序的情况下,hashmap的执行效率高于treemap:hashmap > treemap。
以上这篇浅谈java中几个常用集合添加元素的效率就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。