黑马程序员技术交流社区

标题: 使用Conllenctions工具对List进行排序 [打印本页]

作者: 阮文江    时间: 2015-9-19 10:58
标题: 使用Conllenctions工具对List进行排序
Collections是集合框架中的一个工具类。该类中的方法都是静态的
        提供的方法中有可以对list集合进行排序,二分查找等方法。
        通常常用的集合都是线程不安全的。因为要提高效率。
        如果多线程操作这些集合时,可以通过该工具类中的同步方法,将线程不安全的集合,转换成安全的。
conllnectinons这个工具类经常用于list集合的排序,而Set集合中需要的排序的话因为有TreeSet,所以一般不会用到这个工具类下面对List进行排序:
  1. class  CollectionsDemo
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 List<String> list = new ArrayList<String>();
  6.                 list.add("abcd");
  7.                 list.add("aaa");
  8.                 list.add("zz");
  9.                 list.add("kkkkk");
  10.                 //按照默认的顺序排序
  11.                 Collections.sort(list);
  12.                 //将比较器传入
  13.                 Collections.sort(list,new StrLenComparator());

  14.         }
  15. }
  16. //自定义比较器,让集合按照自定义的方式排序
  17. class StrLenComparator implements Comparator<String>
  18. {
  19.         public int compare(String s1,String s2)
  20.         {
  21.                 if(s1.length()>s2.length())
  22.                         return 1;
  23.                 if(s1.length()<s2.length())
  24.                         return -1;
  25.                 return s1.compareTo(s2);
  26.         }
  27. }
复制代码





作者: 插兜    时间: 2015-9-19 12:03
很不错,




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2