本帖最后由 帅气的冬瓜 于 2013-11-7 19:35 编辑
import java.util.*;
class CollectionsDemo
{
public static void main(String[] args)
{
binarySerchDemo();
}
public static void sop(Object obj)
{
System.out.println(obj);
}
public static void binarySerchDemo() {
List<String> list=new ArrayList<String>();
//TreeSet<String> list=new TreeSet<String>(Collections.reverseOrder(new StrLenComparator())); 1、这句可以代替上一句
进行强制逆转,List<String> list=new ArrayList<String>(Collections.reverseOrder(new
StrLenComparator())) ;这样为什么不可以呢?
list.add("abcd");
list.add("aaa");
list.add("kkkkk");
list.add("z");
list.add("ssss");
list.add("ww");
list.add("qq");
list.add("eer");
Collections.sort(list);
sop(list);
//Collections.reverseOrder(new StrLenComparator()); 2、这句加上也没有报错,可是没有作用?为什么?
sop(list);
3、Collections.reverseOrder:在什么范围内使用?
}
}
class StrLenComparator implements Comparator<String>
{
public int compare(String s1,String s2)
{
if (s1.length()>s2.length())
return 1;
if (s1.length()<s2.length())
return -1;
return s1.compareTo(s2);
}
}
|
|