package Gather.CollectionArrayList.HashMap.TreeMap;
import java.util.Comparator;
import java.util.TreeMap;
/**
* @author 小王宝友
* @version 3.89
* TreeMap
* 在制定规则后,都会比较内容,只要比较的内容一样后加入的数据就加不进去
* TreeSet的底层就是TreeMap
* 若没有传入一个Comparator匿名对象,
* 则以你添加的对象实现的Compareable接口的compareTo来去重
*
*/
@SuppressWarnings({"all"})
public class TreeMap_ {
public static void main(String[] args) {
//使用默认的构造器,来创建TreeMap,是无序的,也没有排序
/**
* 按照输入的k(String)的大小进行排序
* 按照输入的k(String)的长度进行排序
*/
// TreeMap treeMap = new TreeMap();
TreeMap treeMap = new TreeMap(new Comparator() {
@Override
public int compare(Object o1, Object o2) {
//按照输入的k(String)的大小进行排序
return ((String)o2).compareTo((String)o1);
//按照输入的k(String)的长度进行排序
// return ((String)o1).length() - ((String)o2).length();
}
});
treeMap.put("jack",null);//key不可以为空,但是value可以为空
treeMap.put("tom","汤姆");
treeMap.put("smith","史密斯");
treeMap.put("rose","肉丝");//对于jack中的key不是替换,而是加入不进去
System.out.println("treeMap="+treeMap);
}
}