排序: String[] strArray = new String[] {"z", "a", "C"}; List list = Arrays.asList(strArray); 一个数组列对象并且是和strArray的大小一样。 Collections.sort(list); 按照ASCII的升序排序。 Collections.sort(list, String.CASE_INSENSITIVE_ORDER); 按照英文字母顺序排序,忽略大小写。 Collections.sort(list, Collections.reverseOrder()); 按照ASCII的降序排序。 Collections.sort(list, String.CASE_INSENSITIVE_ORDER); Collections.reverse(list);先按照英文字母顺序排序,然后再用降序排序。
public static <T> Comparator<T> reverseOrder(Comparator<T> cmp)返回一个比较器,它强行反转指定比较器的顺序 public static void reverse(List<?> list)反转指定列表中元素的顺序。
测试示例1:
String[] strArray = {"b","A","a","B","c"}; List list = Arrays.asList(strArray); System.out.println("按插入顺序输出如下:"); for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i)); }
输出结果:
按插入顺序输出如下: b A a B c
测试示例2:
Collections.reverse(list); System.out.println("将list逆序输出:"); for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i)); }
输出结果:
将list逆序输出: c B a A b
测试示例3:
System.out.println("按照ASCII的升序排序输出如下:"); Collections.sort(list); for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i)); }
输出结果:
按照ASCII的升序排序输出如下: A B a b c
测试示例4:
System.out.println("按照ASCII的降序排序:"); Collections.sort(list, Collections.reverseOrder()); for(Object o:list){ System.out.println(o.toString()); }
输出结果:
按照ASCII的降序排序: c b a B A
测试示例5:
System.out.println("按照ASCII的升序排序,忽略大小写输出如下:"); Collections.sort(list,String.CASE_INSENSITIVE_ORDER); for(Iterator<String> iter = list.iterator();iter.hasNext();){ System.out.println(iter.next()); }
输出结果:
按照ASCII的升序排序,忽略大小写输出如下: A a b B c
测试示例6:
System.out.println("按照ASCII的降序排序,忽略大小写输出如下:"); Collections.sort(list, Collections.reverseOrder(String.CASE_INSENSITIVE_ORDER)); for(Object o:list){ System.out.println(o.toString()); }
输出结果:
按照ASCII的降序排序,忽略大小写输出如下: c b B A a
List取交集示例
String[] strArray = {"A","a","b","B","d"}; String[] strArray2 = {"a","b","c","d"}; ArrayList list2 = new ArrayList(Arrays.asList(strArray2)); ArrayList list =new ArrayList(Arrays.asList(strArray)); list.retainAll(list2);
遍历结果得:
d b a