LinkedHashMap 继承于 hashMap

LinkedHashMap .Entry 继承 HashMap.Node 继承 Map.Entry类

LinkedHashMap .Entry 该Entry除了保存当前对象的引用外,还保存了其上一个元素before和下一个元素after的引用,从而在哈希表的基础上又构成了双向链接列表。仍然保留next属性,所以既可像HashMap一样快速查找,用next获取该链表下一个Entry,也可以通过双向链接,通过after完成所有数据的有序迭代

accessOrder字段定义顺序生成  accessOrder=true时访问顺序排序,否则按插入顺序排序 默认false

HashMap 预留的空实现

afterNodeAccess 当节点已存在 修改节点值得时候 调用LinkedHashMap中afterNodeAcces()方法替换 如果时访问顺序得话 则将当前节点移到最后 

afterNodeInsertion 方法再LinkedHashMap中默认不起作用

当是put操作是  LinkedHashMap重写了newNode()方法  把当前插入节点放在链边tail节点上(末尾)

当get操作时  LinkedHashMap重写了get(Object key)方法 如何是访问顺序获取后则把当前节点放到末尾  如果是插入顺序则不做操作

最新文章

  1. 删除顽固node_modules
  2. 关于orapwd命令entries参数的探究
  3. Mybatis批量添加对象List
  4. Python中的sort()方法使用基础
  5. 解决maven的“Dynamic Web Module 3.0 requires Java 1.6 or newer.”错误
  6. 在 VS14 上安装 Visual F# Power Tools
  7. Tomcat默认打开项目设置
  8. 数组Api .map()的使用
  9. PHP的优点
  10. VS快捷方式小技巧
  11. JavaScript插件——模态框
  12. oracle中触发器的讲解
  13. Nlpir Parser灵玖文本语义挖掘系统数据采集
  14. 翻译:MariaDB字符集和排序规则
  15. 【java】内存流:java.io.ByteArrayInputStream、java.io.ByteArrayOutputStream、java.io.CharArrayReader、java.io.CharArrayWriter
  16. Windows10 VS2017 C++编译Linux程序
  17. 10个常见的JavaScript BUG
  18. centos 上不了网了
  19. python的类中为什么要引入self
  20. Python while 循环使用实例

热门文章

  1. shell脚本基础和grep文本处理工具企业应用4
  2. C++虚函数作用原理(一)——虚函数如何在C++语言逻辑中存在
  3. moment.js 使用方法记录
  4. 浅析jsp
  5. 如何使用Laravel Debugbar?
  6. python2.6切换python3.4的操作记录
  7. 2018 焦作网络赛 G Give Candies ( 欧拉降幂 )
  8. 灰度图像--图像分割 Robert算子
  9. 欧拉函数(线性筛)(超好Dong)
  10. vue中改变数组或对象,页面没做出对应的渲染