您的位置:首页 > 编程语言 > Java开发

【Java学习】Java按照字符串长度排序

2014-08-27 00:00 991 查看
import java.util.Comparator;
import java.util.Iterator;
import java.util.TreeSet;

/**
* 练习:按照字符串长度排序
*
* 字符串本身具备比较性,但是它的比较方式不是所需要的。这时候需要比较器
*
*/
public class TreeSetSort {

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("hahaha");
Iterator it = ts.iterator();
while ( it.hasNext()) {
System.out.println(it.next());
}

}

}

class StrLenComparator implements Comparator{

@Override
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 -1;
*/
int num = new Integer(s1.length()).compareTo(new Integer(s2.length()));

if (num == 0) {
return s1.compareTo(s2);
}

return num;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Java 字符串 排序