A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 小p 中级黑马   /  2015-7-25 21:38  /  145 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

import java.util.*;

/*
需求:按字符串长度进行排序

分析:字符串本身具备比较性,但不是功能所需要的,所以需要用比较器

*/

class  TreeSetTest
{
        public static void main(String[] args)
        {
                TreeSet ts = new TreeSet(new StrLenComparator());

                ts.add("abcd");
                ts.add("cc");
                ts.add("cba");
                ts.add("aaa");
                ts.add("z");
                ts.add("hahaa");

                Iterator it = ts.iterator();

                while(it.hasNext())
                {
                        System.out.println(it.next());

                }

        }

}

class StrLenComparator 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())
                        return 0;
                        */
                int num= new Integer(s1.length()).compareTo(new Integer (s2.length()));
                if(num==0)
                        return s1.compareTo(s2);
                return -1;
        }
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马