package java_test;import java.util.List;import java.util.ArrayList;class listDemo{ public void listAction(){ Listlist = new ArrayList ();//<>这里面只能接复合类型的数据,List 就会报编译错误 list.add("a");//增加一个元素 int len=list.size();//获取list的大小,即元素个数 System.out.println(len);//输出为1 String s=list.get(0);//获取list中的第一个值,是从0开始的,如果list的长度为而get(1)会报越界的异常 System.out.println(s);//输入为a list.set(0,"b");//替换index为0的元素值 System.out.println(list);//输出为[b] boolean c=list.contains("a");//判断list中是否包含有元素a System.out.println(c); String a="adsadsa"; System.out.println(a.contains("d"));//判断字符串a中是否包含子字符串“d” List l1=new ArrayList (); l1.add("c"); list.addAll(l1);//向list里面添加一个l1,可以理解为两个数组取并集,并将并集的结果复制给list System.out.println(list);//输出[b,c] list.retainAll(l1);//取两个数组的交集,并将交集的结果复制给list System.out.println(list);//输出[c] list.add("d"); list.add("e"); System.out.println(list); List d=list.subList(0, 2);//从list中取一个子list,这里从0开始,到index位2的位置,但是不包含2 System.out.println(d);//输出[c,d] } public void loopList(){//列表循环 List list=new ArrayList (); list.add(3); list.add(2); list.add(1); for(int i=0;i list=new ArrayList (); list.add(1); list.add(2); list.add(1); /** * remove有两种形式,一种是按index删除,一种是按list中的值删除 * 按index删除时,入参是int类型,按值删除时,入参是符合数据类型 */ Integer e=1;//事先定义好要删除的值和对象 /** * Removes the first occurrence of the specified element from this lisr * api说明中强调了,在remove(Object o)时,是删除第一次出现的这个值 */ list.remove(e); System.out.println(list);//输出位[2,1] int index=0;//定义要删除的index,也可以不事先定义,直接remove(1)。这个1会被默认为是int型的 list.remove(index); System.out.println(list);//输出[1] list.add(2); list.add(2); list.add(2); List l1=new ArrayList (); l1.add(2); /** * remove是单个remove,如果我想把list中的元素2全部一次性的remove掉,就要用removeAll了 * removeAll会把list中等于l1元素的元素全部删除 * 也可以理解为是去list与l1的差集,并将差集的结果复制给list */ list.removeAll(l1); System.out.println(list);//输出为1 } public void loopRemoveList(){ List list=new ArrayList (); list.add("a"); list.add("b"); list.add("a"); list.add("a"); list.add("a"); for(int i=0;i