TreeMap:
package com;
import java.util.Comparator;
import java.util.TreeMap;
public class Test5 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
TreeMap tree = new TreeMap(
new Comparator() {
@Override
public int compare(Object o1,Object o2) {
// TODO Auto-generated method stub
if(o1 == null || o2 == null){
return 0;
}
return o1.toString().compareTo(o2.toString());
}
}
);
tree.put("k","1");
tree.put("ba","2");
tree.put("z","3");
tree.put("d","4");
tree.put("e","5");
tree.put("an","6");
tree.put("c","7");
for(String str : tree.keySet()){
System.out.println(str);
}
}
}
经测试默认是按照 KEY 进行排序的。
但是可以写对象比较器,进行自定义排序。
TreeSet : 自定义倒序排序,默认按照正序排序,1,2,3,4,5,6
package com;
import java.util.Comparator;
import java.util.TreeSet;
public class Test6 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
TreeSet tree = new TreeSet(new Comparator() {
@Override
public int compare(Object o1,Object o2) {
// TODO Auto-generated method stub
if(o1 == null || o2 == null){
return 0;
}
if(Integer.parseInt(o1.toString()) > Integer.parseInt(o2.toString())){
return -1;
}else if(Integer.parseInt(o1.toString()) < Integer.parseInt(o2.toString())){
return 1;
}else{
return 0;
}
}
});
tree.add(4);
tree.add(5);
tree.add(6);
tree.add(1);
tree.add(2);
tree.add(3);
for(Object o : tree){
System.out.println(o);
}
}
}
以上这篇浅谈java中的TreeMap 排序与TreeSet 排序就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程小技巧。
总结
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您喜欢交流学习经验,点击链接加入交流1群:1065694478(已满)交流2群:163560250