list排序

 

排序:
       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
 

你可能感兴趣的:(C++,c,C#)