java中TreeMap自定义排序以及一个键对应多个值问题
来源:互联网 发布:视频配音软件手机 编辑:程序博客网 时间:2024/04/29 09:39
原文转自:http://blog.163.com/xh_ding/blog/static/193903289201181103333431/
在最近写的一个工程里用到了TreeMap这个数据结构,TreeMap是SortedMap接口基于红黑树的实现,该类保证了映射按照升序排列关键字,根据使用的构造方法不同,可能会按照键的类的自然顺序进行排序,或者按照创建时所提供的比较器进行排序。插入该映射的所有键必须是可以相互比较的(实现Comparable接口),否则将抛出ClassCastException!
比如我创建一个TreeMap<Double,String>的结构要按照Double的降序排序(注意,默认的是按照升序排序的!)则可以这样写:
TreeMap<Double,String> rf = new TreeMap<Double,String>(new Comparator(){ @Override public int compare(Object o1, Object o2) { // TODO Auto-generated method stub Double a = (Double)o1; Double b = (Double)o2; return -a.compareTo(b); }});
如果想要一个键对应多个值则可以用一个list来存储value如:
TreeMap<Double,ArrayList<Integer>> rf = new TreeMap<Double,ArrayList<Integer>>();
向该TreeMap中放入数据<key,value>:
ArrayList<Integer> list = (ArrayList<Integer>) rf.get(key);//根据key得到存放value 的listif(list == null)list = new ArrayList<Integer>();list.add(value);rf.put(key,list);
如此便可以实现在TreeMap中一个key对应着多个value~~
- java中TreeMap自定义排序以及一个键对应多个值问题
- JAVA 中map和List实现一个键对应多个值
- TreeMap中如何实现自定义类key值的排序
- Java 用TreeMap 储存自定义对象 并按名称排序
- java TreeMap 中文 排序
- Java TreeMap的排序
- Java TreeMap的排序
- Java TreeMap的排序
- Java HashMap和TreeMap的排序问题总结
- JAVA中HashMap和LinkedHashMap以及TreeMap的区别
- 我对Java中HashMap以及treeMap的理解
- 在java中使用TreeMap进行中文排序
- Java中对Map(HashMap,TreeMap,Hashtable等)的排序
- java中如何使用TreeMap进行键值对排序
- 在java中使用TreeMap进行中文排序
- java中使用TreeMap进行中文姓名排序
- Java中对Map(HashMap,TreeMap,Hashtable等)的排序
- java中如何使用TreeMap进行键值对排序
- Spring AOP 详解
- 这个应用告诉你 你的宠物们在“想”什么
- 国际IT项目咨询管理讲座笔记(Rick Freedman)
- MATLAB中的随机数发生函数
- vc 调试
- java中TreeMap自定义排序以及一个键对应多个值问题
- MongoDB C#驱动中Query几个方法
- 如何使用可拉伸的图片自定义UIButton,类似9patch效果
- win7 关闭skype后为什么在任务栏还显示
- 在SQL Server 2008中注册.net方法
- el表达式使用方法
- PowerPC boot目录分析(Linux 2.6.35)
- 选出任意N个不同随机数
- 诸事物流