上两周在心理医生的建议下调理了下生活和工作,耽误了,把拖更的补上,抱歉。
== 注意:本文不包含红黑树的内容(因为涉及到红黑树数据结构,为避免本文学习成本太大,将拆分成两部分讲解完hashmap)==
引子
说实话,hashmap在JAVA里面算是非常重要的一个工具类了。从我毕业的第一个面试问题到现在的各大小的面试题,除了少数很坑的公司面试,几乎从来就没少过hashmap,因为这个映射工具类在学习和工作中太常用了。记得我上一份工作的银行项目,几乎每写10行代码就需要用到一个hashmap。所以请务必理解源码原理噢。
关于了解源码
提到工具类的原理,我们往往望而却步,其实durk不必,任何类都无非包含成员变量和方法,这些方法无非是对这些成员变量进行修改。类里再复杂一点可能就是包含各种匿名内部类或者内部类,无非就是一种声明,无需太畏难。
hashmap原理
我们通过eclipse编译器 Ctrl + H 看一下hashmap的类型结构,这么多的成员变量和方法,还有繁多的内部类。无从下手。