zoukankan      html  css  js  c++  java
  • Map、Set、List初始化大小的影响

    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.HashSet;
    import java.util.List;
    import java.util.Map;
    import java.util.Set;
    
    public class Test
    {
    
        public static void main(String[] args)
        {
    	testHashMap(16);
    	testHashMap(5000000);
    	System.out.println("----------------");
    	testHashSet(16);
    	testHashSet(5000000);
    	System.out.println("----------------");
    	testArrayList(16);
    	testArrayList(5000000);
        }
    
        public static void testHashMap(int initSize)
        {
    	Map<Integer, String> map = new HashMap<Integer, String>(initSize);
    
    	long beginTime = System.currentTimeMillis();
    	for (int i = 0; i < 5000000; i++)
    	{
    	    map.put(i, "hellooiuytrewq");
    	}
    	long endTime = System.currentTimeMillis();
    	System.out.println(endTime - beginTime);
        }
    
        public static void testHashSet(int initSize)
        {
    	Set<Integer> set = new HashSet<Integer>(initSize);
    
    	long beginTime = System.currentTimeMillis();
    	for (int i = 0; i < 5000000; i++)
    	{
    	    set.add(i);
    	}
    	long endTime = System.currentTimeMillis();
    	System.out.println(endTime - beginTime);
        }
    
        public static void testArrayList(int initSize)
        {
    	List<Integer> list = new ArrayList<Integer>(initSize);
    
    	long beginTime = System.currentTimeMillis();
    	for (int i = 0; i < 5000000; i++)
    	{
    	    list.add(i);
    	}
    	long endTime = System.currentTimeMillis();
    	System.out.println(endTime - beginTime);
        }
    
    }
    

      

    4329
    2184
    ----------------
    2832
    2088
    ----------------
    1185
    451

  • 相关阅读:
    linux学习笔记
    HDMI之CEC DDC学习笔记(可能有误)
    MAP按照value排序
    Map遍历四种方法
    Java native方法
    [PAT] 1143 Lowest Common Ancestor (30 分)Java
    [PAT] 1148 Werewolf
    [PAT] 1096 Consecutive Factors (20 分)Java
    [PAT] 1092 To Buy or Not to Buy (20 分)Java
    [PAT] 1088 Rational Arithmetic (20 分)Java
  • 原文地址:https://www.cnblogs.com/mu-tou-man/p/5173949.html
Copyright © 2011-2022 走看看