import java.util.Comparator; import java.util.TreeSet; public class TreeSet01 { @SuppressWarnings({"all"}) public static void main(String[] args) { TreeSet treeSet = new TreeSet(new Comparator() { @Override public int compare(Object o1, Object o2) { //下面 调用String的 compareTo方法进行字符串大小比较 // return ((String)o2).compareTo((String)o1); //要求加入元素,按照长度大小排序 return ((String)o2).length() - ((String)o1).length(); } }); treeSet.add("Jack"); treeSet.add("Rose"); treeSet.add("CiCi"); treeSet.add("XiXi"); treeSet.add("XiXi"); //不可添加重复元素 System.out.println(treeSet); } } TreeMap 源码解读
import java.util.Comparator; import java.util.TreeMap; public class TreeMap01 { public static void main(String[] args) { //使用默认的构造器,创建TreeMap,是无序的(也没有排序) // TreeMap treeMap = new TreeMap(); TreeMap treeMap = new TreeMap(new Comparator() { @Override public int compare(Object o1, Object o2) { //按照传入数据的大小进行排序 // return ((String)o1).compareTo((String)o2); //按照传入数据的长度进行排序,相同长度只会输入一个,就是相同第一个添加的 return ((String)o1).length() - ((String)o2).length(); } }); treeMap.put("Rose",8); treeMap.put("Jack",1); treeMap.put("Tom",2); treeMap.put("CiCi",3); treeMap.put("Rose",4); System.out.println(treeMap); } }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)