zoukankan      html  css  js  c++  java
  • 由浅入深解析HashMap

     

       HashMap是工作中用的比较多的集合类框架,是java语言中非常重要的数据结构,记得毕业找工作时,面试官都特别喜欢问hashmap和hashtable,由此可见它的重要性。

    我计划写一个系列,由浅入深解析HashMap(不知道能不能坚持):

    由浅入深解析HashMap---HashMap简单实现 增、删、查。

    由浅入深解析HashMap---HashMap扩容

    由浅入深解析HashMap---HashMap冲突

    由浅入深解析HashMap---HashMap红黑树

    由浅入深解析HashMap---HashMap遍历

    每个节都是基于前一节,是在前一节的例子上添加功能。

    HashMap简单实现 增、删、查。这个章节主要是定义了一个长度为16的数组,不考虑扩容,不考虑冲突。说直白就是对数组的操作,只是这里的下标值不是从1---16这种顺序,而是根据hash值来获取数组下标。

    HashMap扩容。这个章节在上一个章节的基础上考虑扩容的问题,在这一章节不考虑hash冲突。

    HashMap冲突。同理,这个也是基于上一个章节,但这里不考虑红黑树,即不考虑链表中元素达到一定个数时转换成树结构。

    HashMap红黑树。JDK1.8的功能,默认情况下,当冲突个数达到8个时,就会将链表转换成树结构。

    HashMap遍历。解析hashmap提供的几种遍历方法,分析他们之间的性能。

    若文章中有不正确或者可以有更好的处理方法之处,还请各位不吝赐教。

     

  • 相关阅读:
    AWR介绍使用
    hint使用
    部分索引类型介绍\索引重建否\索引压缩
    生成Oracle Statpack步骤
    自治事务
    append与nologging的使用
    聚簇表
    C语言杂谈——静态函数
    Qt之对话框设计——可扩展对话框
    C语言杂谈——指针篇
  • 原文地址:https://www.cnblogs.com/icbcfang/p/5414652.html
Copyright © 2011-2022 走看看