• java源码--HashMap扩容机制学习


    待完成

    Java中hash算法细述

    https://blog.csdn.net/majinggogogo/article/details/80260400

    java HashMap源码分析(JDK8)

    https://www.cnblogs.com/hfczgo/p/4033283.html

    大数据java基础之浅谈位运算——异或(运用在hashcode中)

    https://blog.csdn.net/qq_40707682/article/details/81260329

    HashMap实现原理简析(哈希表)

    https://www.jianshu.com/p/df4a907ef4ef


    又浪费的一周时间,该是动动脑了。

    HashMap类,呈现出来的表面是,我们可以用键值对的方式来存储我们要存的数据,然后灵活的取数据。

    好像日常工作中就用到这个。这是当初作为一个新人的认识。

    如下:

        public static void testHashMap() {
            HashMap<String,Object> mHashMap=new HashMap<>();
            int a=1;
            String b="我想要成为怎么样的人";
            
            mHashMap.put("123", a);
            mHashMap.put("456", b);
            
            String tmpObject = String.valueOf(mHashMap.get("123"));
            System.out.println(tmpObject);
        }

    我们最常用的put和get方法,

    还有遍历hashMap所有节点。话说以前都还不知道怎么遍历Map对象(挠头表情)

            //第一种:普通使用,二次取值,keySet方法获取Set集合,遍历key的集合来获取值valuefor(String key:map.keySet())
            {
             map.get(key);
            }
            
            //第二种:获得Map.Entry<K,V>接口的Set集合,然后使用Iterator接口遍历这个set集合获得Key,Value 
            Iterator map1it=map.entrySet().iterator();
            while(map1it.hasNext())
            {
          获得一个Entry<Key,Value>,处理逻辑 Map.Entry
    <String, String> entry=(Entry<String, String>) map1it.next();
          entry.getKey()
          entry.getValue()
    } //第三种:推荐,尤其是容量大时 System.out.println(" 通过Map.entrySet遍历key和value"); for(Map.Entry<String, String> entry: map.entrySet()) { System.out.println("Key: "+ entry.getKey()+ " Value: "+entry.getValue()); }
  • 相关阅读:
    纯CSS打造可折叠树状菜单
    c++ Constructor FAQ 继续
    Java设计模式偷跑系列(六)Singleton模式的建模与实现
    优秀的产品经理是怎样炼成的?
    Pki原则
    屌丝男初中丰富的工作实践反击
    Android Material Design带UI变化
    unity多边形uv地图
    BZOJ 1208 HNOI2004 宠物收容所 平衡树/set
    [连载]Java程序设计(04)---任务驱动的方法:工资结算系统
  • 原文地址:https://www.cnblogs.com/gne-hwz/p/10042740.html
Copyright © 2020-2023  润新知