Collenctions的常用用法

用代码来理解Collenctions的用法
代码如下:
import java.awt.List;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Objects;

public class cxl{

public static void main(String[] args) {
	// TODO Auto-generated method stub
	ArrayList<Integer> list=new ArrayList<Integer>();
	int[] a= {2,5,8,6,4};
	for(int i=0;i<a.length;i++) {
		list.add(a[i]);
	}
	
	Collections.sort(list);//对集合进行排序
	for(int i=0;i<list.size();i++)
	System.out.print(list.get(i)+" ");
	System.out.println();
	Collections.shuffle(list);
	for(int i=0;i<list.size();i++)//混排算法所做的正好与 sort 相反: 它打乱在一个 List 中可能有的任何排列的踪迹
		System.out.print(list.get(i)+" ");
	Collections.reverse(list);//反转,将顺序反过来
	System.out.println();
	for(int i=0;i<list.size();i++)
		System.out.print(list.get(i)+" ");
	System.out.println();
	System.out.println(Collections.max(list));//最大
	System.out.println(Collections.min(list));//最小
	System.out.println();
    sta();

}
static void sta() {
	ArrayList<String> list2=new ArrayList<String>();
	ArrayList<String> list3=new ArrayList<String>();
	ArrayList<Integer> nnn=new ArrayList<Integer>(Arrays.asList(1,2,3,4,88,88,88,88,5,6,7,8,9));
	ArrayList<Integer> mmm=new ArrayList<Integer>(Arrays.asList(88));
	list2.add("aaa");
	list2.add("bbb");
	list2.add("ccc");
	list2.add("ddd");;
	Collections.addAll(list3, new String[list2.size()]);
	Collections.copy(list3,list2);
	//只有当list3的 size 大于或者等于list2的size时才进行拷贝,否则抛出IndexOutOfBoundsException异常; 
	for(String s:list3) {
		System.out.println(s);
	}
	System.out.println(Collections.indexOfSubList(nnn, mmm));//mmm中的元素在nnn中的第一次出现的位置
	System.out.println(Collections.lastIndexOfSubList(nnn, mmm));//mmm中的元素在nnn中最后一次出现的位置
	Collections.rotate(nnn, 3);//集合中的元素向又移动3位
	System.out.println(nnn);
	Collections.sort(nnn);//将nnn进行排序
	Collections.rotate(nnn, -3);
	System.out.println(nnn);//集合中的元素向左移动3位
	Collections.swap(list2, 2, 3);//将swap中的2和3的位置调换
	System.out.println(list2);
	
}

}

如有其它常用的方法请指教,谢谢!!!

发布了13 篇原创文章 · 获赞 0 · 访问量 114

猜你喜欢

转载自blog.csdn.net/vi_to/article/details/105145330