/** * 字符串由短到长的排序 * 思路: * 1.排序,想到TreeSet集合,因为字符串扔到TreeSet集合中,能自动排序. * 2.字符串排序,是因为字符串本身具备自然排序的功能. * 3.但是依靠的是它的自然排序是字母由小到大排序,所以只能用比较器定义长度排序 * 4.而且TreeSet直接能在构造方法中传入比较器. * 5.输出结果. */ public class TreeSetTest { public static void main(String[] args) { Set strSet = new TreeSet(new Comparator(){ /*这里我用了匿名内部类的方法,写在外面也可以*/ public int compare(Object o1, Object o2) { String str1 = (String)o1; String str2 = (String)o2; int temp = str1.length()- str2.length(); return temp==0? str1.compareTo(str2):temp; } }); strSet.add("zsgasg"); strSet.add("zsg"); strSet.add("zsgzg"); strSet.add("zsgansds"); for(Iterator it = strSet.iterator();it.hasNext();){ System.out.println(it.next()); } } }
时间: 2024-10-03 22:54:23