集合框架-TreeSet-Comparator比较器练习(字符串长度排序)
1 package cn.itcast.p5.treeset.test; 2 3 import java.util.Iterator; 4 import java.util.TreeSet; 5 6 import cn.itcast.p5.comparator.ComparatorByLen; 7 /* 8 * 对字符串进行长度排序 9 */ 10 public class TreeSetTest { 11 12 public static void main(String[] args) { 13 // TODO Auto-generated method stub 14 TreeSet ts = new TreeSet(new ComparatorByLen()); 15 16 ts.add("aaaaa"); 17 ts.add("zz"); 18 ts.add("nbaq"); 19 ts.add("cba"); 20 ts.add("abc"); 21 22 Iterator it = ts.iterator(); 23 24 while(it.hasNext()) { 25 System.out.println(it.next()); 26 } 27 } 28 29 }
1 package cn.itcast.p5.comparator; 2 3 import java.util.Comparator; 4 5 public class ComparatorByLen implements Comparator { 6 7 @Override 8 public int compare(Object o1, Object o2) { 9 // TODO Auto-generated method stub 10 String s1 = (String)o1; 11 String s2 = (String)o2; 12 int temp = s1.length()-s2.length(); 13 14 return temp==0?s1.compareTo(s2):temp; 15 16 } 17 18 }