课程名称:Map从入门到性能分析
课程章节:第4章 LinkedHashMap\TreeMap
课程讲师: 大谷
课程内容:
一、LinkedHashMap的一些特有用法
1、两种输出顺序,1、按录入顺序;2、按使用顺序
Map<String,String> linkedMap = new LinkedHashMap<String,String>();
//输出时缺省按录入顺序
Map<String,String> linkedMap = new LinkedHashMap<String,String>(16,0.75l,true);
//第三个参数,accessSort,使输出时按使用顺序
//最近使用的key排在最后
2、利用LinkedHashMap实现LRU
//保留最近使用的指定数量的键值对
@Override
protected boolean removeEldestEntry(Map.Entry<K,V> eldest){
return size() > this.maxSize;
}
二、TreeMap的一些特有方法
对TreeMap实现增、删、遍历、排序等操作
存取耗时对比
1、实现升序或降序
默认是按key升序排序,如果要实现降序,需要自定义实现比较器Comparator
在compare方法中进行定义
Map<String,String> treeMap = new TreeMap<String,String>(new Comparator<String>(){
public int compare(String a,String b){
return b.compareTo(a);
}
});
课程收获:
本次系列课程,学习了Map接口的常见方法,了解了Map的不同遍历方法,以及HashMap、TreeMap、LinkedHashMap的区别和选择。
个人理解Map做为日常使用最频繁的对象之一,有了本次课程的基础,对日后的学习和工作效率都有很好的帮助。