import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
/**
* 當元素自身提供的比較規則不能滿足我們對于排序的需求時, 我們可以額外的提供一種比較規則。
*
* @author huawangxin
*
*/
public class ListDemo {
public static void main(String[] args) {
List
list = new ArrayList
();
list.add("範傳奇");
list.add("馬雲");
list.add("李宏毅");
list.add("巴神");
list.add("金槍小帥");
list.add("奧巴馬");
list.add("趙雲");
System.out.println(list);
MyComparator com=new MyComparator();
/*
* 但元素自身提供的比較規則不能滿足排序條件
* 我們可以提供額外的比較規則
*/
// Collections.sort(list);
Collections.sort(list,com);
System.out.println(list);
}
}
class MyComparator implements Comparator
{
@Override
public int compare(String o1, String o2) {
// 哪個字元串的字元串多哪個字元串大
return o1.length() - o2.length();
}
}
上述如果有不對或者補充的地方,請大家批評和指教,謝謝。