(69)TreeSet练习:按照长度为主关键字,自然顺序为次关键字排序

来源:互联网 发布:2016网络在逃犯名单 编辑:程序博客网 时间:2024/06/01 10:15

需求:按照字符串的长度排序。
分析:字符串本身具备比较性,但是它的比较方式不是所需要的,所以要用比较器

主关键字为长度,次关键字为字符串自然顺序

import java.util.*;public class StringCompare implements Comparator{    public int compare(Object o1,Object o2) {        String str1=(String)o1;        String str2=(String)o2;        int num=str1.length()-str2.length();//主关键字        if(num==0) {            return str1.compareTo(str2);//次关键字        }        return num;    }}public class StringDemo {    public static void main(String[] args) {        // TODO Auto-generated method stub        TreeSet ts=new TreeSet(new StringCompare());        ts.add("lisi00");        ts.add("lisi001");        ts.add("lisi02");        ts.add("lisi0");        ts.add("lisi04");        Iterator it=ts.iterator();        while(it.hasNext()) {            Object obj=it.next();            String str=(String)obj;            System.out.println(str);        }    }}
阅读全文
0 0
原创粉丝点击