| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
ne3g
10年前发布

List 排序 Java工具类

/**  #############################################################################  # DESCRIBE 关于给Vector,ArrayList和LinkedList特定List集合排序的方法  # AUTHOR   # DATE 2007-3-16  # COMPANY FLX  # PORJECT JAVA  #############################################################################  */  import java.io.PrintStream;  import java.text.CollationKey;  import java.text.Collator;  import java.util.ArrayList;  import java.util.Arrays;  import java.util.Collections;  import java.util.Comparator;  import java.util.List;    public class SortList {     public static void main(String args[]) {    String words[] = { "man", "Man", "Woman", "woman", "Manana", "manana", "ma?ana", "Ma?ana", "Mantra", "mantra",      "mantel", "Mantel" };      PrintStream out = System.out;      List list = new ArrayList(Arrays.asList(words));    out.println("传入的list:");    out.println(list);    out.println();      Collections.sort(list);    out.println("默认的sorting:");    out.println(list);    out.println();      list = new ArrayList(Arrays.asList(words));    Comparator comp = Collections.reverseOrder();    Collections.sort(list, comp);    out.println("反向sorting:");    out.println(list);    out.println();      list = new ArrayList(Arrays.asList(words));    comp = new CollatorComparator();    Collections.sort(list, comp);    out.println("自定义排序sorting:");    out.println(list);    out.println();      list = new ArrayList(Arrays.asList(words));    comp = new CaseInsensitiveComparator();    Collections.sort(list, comp);    out.println("按照语种sorting:");    out.println(list);    out.println();     }     /**    #############################################################################    #    # @DESCRIBE 自定义的排序规则    # @author Administrator    #    #############################################################################    */   public static class CaseInsensitiveComparator implements Comparator {    public int compare(Object element1, Object element2) {     String lower1 = element1.toString().toLowerCase();     String lower2 = element2.toString().toLowerCase();     return lower1.compareTo(lower2);    }   }   /**    #############################################################################    #    # @DESCRIBE 按照语种进行排序的规则    # @author Administrator    #    #############################################################################    */   public static class CollatorComparator implements Comparator {    Collator collator = Collator.getInstance();      public int compare(Object element1, Object element2) {     CollationKey key1 = collator.getCollationKey(element1.toString());     CollationKey key2 = collator.getCollationKey(element2.toString());     return key1.compareTo(key2);    }   }  }