public static void main(String args[]) {
test();
test2();
}
public static void test() {
System.out.println("----------test()---------" );
System.out.println("升序排序测试:" );
List<Cat> listCat = new ArrayList<Cat>();
Cat cat1 = new Cat(34, "hehe" );
Cat cat2 = new Cat(12, "haha" );
// Person catx = new Person(12, "lavasoft");
Cat cat3 = new Cat(23, "leizhimin" );
Cat cat4 = new Cat(13, "lavasoft" );
listCat.add(cat1);
listCat.add(cat2);
listCat.add(cat3);
// listCat.add(catx);
System.out.println("原集合为:" );
outCollection(listCat);
System.out.println("调用Collections.sort(List<T> list)排序:" );
Collections.sort(listCat);
outCollection(listCat);
System.out.println("逆序排列元素:" );
Collections.sort(listCat, Collections.reverseOrder());
outCollection(listCat);
System.out.println("再次逆序排列元素:" );
Collections.reverse(listCat);
outCollection(listCat);
System.out.println("添加一个元素后输出集合:" );
listCat.add(cat4);
outCollection(listCat);
System.out.println("排列后输出:" );
Collections.sort(listCat);
outCollection(listCat);
}
/**
* 针对数组的排序
*/
public static void test2(){
String[] strArray = new String[] {"z" , "a" , "C" };
System.out.println("-------------数组转换为列表-------------" );
List<String> list = Arrays.asList(strArray);
outCollection(list);
System.out.println("-------------列表转换为数组(1)-------------" );
String[] strArrayNew1 = list.toArray(strArray);
for (String str:strArrayNew1){
System.out.println(str);
}
System.out.println("-------------列表转换为数组(2)-------------" );
String[] strArrayNew2 = (String[]) list.toArray();
for (String str:strArrayNew2){
System.out.println(str);
}
System.out.println("-------------顺序排序列表-------------" );
Collections.sort(list);
outCollection(list);
System.out.println("-----按String实现的Comparator对象String.CASE_INSENSITIVE_ORDER排序----" );
Collections.sort(list, String.CASE_INSENSITIVE_ORDER);
outCollection(list);
System.out.println("-------------倒序排序列表-------------" );
Collections.sort(list, Collections.reverseOrder());
outCollection(list);
System.out.println("-----按String实现的Comparator对象String.CASE_INSENSITIVE_ORDER排序----" );
Collections.sort(list, String.CASE_INSENSITIVE_ORDER);
outCollection(list);
System.out.println("-----反转列表元素的顺序------" );
Collections.reverse(list);
outCollection(list);
}
}
运行结果:
----------test()---------
升序排序测试:
原集合为:
Cat{age=34, name='hehe'}
Cat{age=12, name='haha'}
Cat{age=23, name='leizhimin'}