zoukankan      html  css  js  c++  java
  • Map调优-1

    package com.exam;
    
    import java.util.HashMap;
    import java.util.Map;
    
    /**
     * @author zt on 2020/7/18
     * <p>
     * 1、创建十个HashMap,每个HashMap含有10万条记录;
     * 2、传递不同的构造方法的参数,比较速度
     * 3、实验参数:构造方法传参(16, 0.75f) 和 (16384, 0.75f)
     */
    public class Demo1 {
        public static void main(String[] args) {
            Long sum = 0L;
            for (int i = 0; i < 10; i++) {
                // sum += new Demo1().inputMap1(16, 0.75f);
                sum += new Demo1().inputMap1(16384, 0.75f);
            }
            System.out.println(sum / 10);
    
            /**
             *  实验结果:
             *      new Demo1().inputMap1(16, 0.75f);       耗时 14423460
             *      new Demo1().inputMap1(16384, 0.75f);    耗时 10528330
             *
             *  可见,合理的设置Map的初始容量可以提高性能。
             */
        }
    
        public Long inputMap1(int initialCapacity, float loadFactor) {
            String key, value;
            Map<String, String> map1 = new HashMap<>(initialCapacity, loadFactor);
            Long start = System.nanoTime();
    
            for (int i = 0; i < 100000; i++) {
                key = String.valueOf(i);
                value = "value";
            }
    
            Long endTime = System.nanoTime();
    
            Long time = endTime - start;
    
            System.out.println("time = " + time);
    
            return time;
        }
    }
  • 相关阅读:
    第一次站立会议
    构建之法阅读笔记03
    软件工程概论学习进度条03
    四则运算三
    构建之法阅读笔记02
    软件工程概论学习进度条02
    四则运算二
    构建之法阅读笔记01
    软件工程概论学习进度条1
    软件工程个人作业01
  • 原文地址:https://www.cnblogs.com/tzzt01/p/13338038.html
Copyright © 2011-2022 走看看