关于list排序

主要是使用了工具类Collections的sort(List<T> list, Comparator<? extends T> comparator)方法。

list是想要被排序的列表。

comparator是排序规则。

实现Comparator的compare(T lhs, T rhs)方法,返回值为int型,

大于0表示lhs比rhs大,两个元素位置交换;

小于0表示lhs比rhs小,位置不变;

等于0表示两值相等,位置不变。

 

private static void collectionSort(){
    //new一个ArrayList
    ArrayList list = new ArrayList();

    //添加元素
    Collections.addAll(list, "aa","a","aaa");

    //实现Comparator接口
    Comparator com = new Comparator(){
        @Override
        public int compare(Object l, Object r) {
            //如果左值l比右值r大,交换位置。
	    return ((String)l).length() - ((String)r).length();
	}
    };

    //排序
    Collections.sort(list, com);

    //打印结果
    for(String a:list){
        System.out.println(a);
    }
}