下面小編就為大家帶來一篇淺談Java中幾個常用集合添加元素的效率。小編覺得蠻不錯的,現在就分享給大家,也給大家做個參考。一起跟著小編過來看看吧
初始化需要進行比較的集合,統一增加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"); }
總結:在不考慮排序的情況下,HashMap的執行效率高於TreeMap :HashMap > TreeMap。
【相關推薦】1.2. 3.以上是簡述六個集合添加元素的效率的詳細內容。更多資訊請關注PHP中文網其他相關文章!