课程名称:Map从入门到性能分析
课程章节:
第4章 LinkedHashMap
主讲老师:大谷
课程内容:
LinkedHashMap与HashMap的性能损耗对比以及LinkedHashMap模拟LRU缓存
课程收获:
1、HashMap、LinkedHashMap都实现了Map接口,LinkedHashMap继承了HashMap,也实现了Map接口,也就是说在HashMap中能使用的方法在LinkedHashMap也能使用,除此之外,LinkedHashMap还有自己特有的方法,LinkedHashMap以双向链表的方式对HashMap做了升级。
2、HashMap是一个最常用的Map,它根据键的HashCode值存储数据,根据键可以直接获取它的值,具有很快的访问速度,遍历时,取得数据的顺序是完全随机的。
3、LinkedHashMap是HashMap的一个子类,保存了记录的插入顺序,在用Iterator遍历LinkedHashMap时,先得到的记录肯定是先插入的.也可以在构造时用带参数,按照应用次数排序。在遍历的时候会比HashMap慢,不过有种情况例外,当HashMap容量很大,实际数据较少时,遍历起来可能会比LinkedHashMap慢,因为LinkedHashMap的遍历速度只和实际数据有关,和容量无关,而HashMap的遍历速度和他的容量有关。
4、模拟LRU缓存