- import java.util.Comparator;
- import java.util.TreeSet;
- class Com
- {
- public static void main(String[] args)
- {
-
- TreeSet ts = new TreeSet(new Demo2013());
- ts.add("f8");
- ts.add("25d55");
- ts.add("1d1");
- ts.add("8d56");
- ts.add("25555");
- ts.add("8d56");
- System.out.println(ts);
- }
- }
- class Demo2013 implements Comparator
- {
- public int compare(Object o1,Object o2)
- {
- String s1 =(String)o1;
- String s2 =(String)o2;
-
- if (s1.length() > s2.length())
- {
- return 1;
- }
- if (s1.length() == s2.length())
- { System.out.println(s1);
- return 0 ; //打印s1提示错误: 不兼容的类型,怎么才能把这里的s1打印出来
- }
- else
- return -1;
- }
- }
复制代码 输出的结果
25555
8d56
[f8, 1d1, 8d56, 25d55]
有两个重复的记录 对字符串长度进行排序 |