Collections类中排序方法

import java.util.*;

/*集合排序 
	List集合中可以使用Collections.sort()方法
	在需要求逆序时可以使用Collections.reverseOrder()方法,该方法返回一个逆序比较器
*/
class StrLenComp implements Comparator
{
	public int compare(String o1,String o2)
	{
		return o1.length()==o2.length()? o1.compareTo(o2):o1.length()-o2.length();
	}
}
class CollectionDemo
{
	public static void main(String[] args) 
	{
	 	SortDemo();
		ReverseDemo();
	}
	public static void ReverseDemo()
	{
		List ls = new ArrayList();
		ls.add("yo");
		ls.add("a");
		ls.add("you");
		ls.add("ada");
		System.out.println(ls);
		Collections.sort(ls,Collections.reverseOrder());//逆序排序
		System.out.println(ls);
		Collections.sort(ls,Collections.reverseOrder(new StrLenComp()));	//逆序一个自定义比较器
		System.out.println(ls);
	}
	public static void SortDemo()
	{
		List ls = new ArrayList();
		ls.add("you");
		ls.add("a");
		ls.add("you");
		ls.add("ada");
		System.out.println(ls);
		Collections.sort(ls);		//按照自然顺序排序
		System.out.println(ls);
		Collections.sort(ls,new StrLenComp());	//自定义一个比较器
		System.out.println(ls);
	}
}


你可能感兴趣的:(Java)