Collection接口中定义的方法如下图所示:
Collection中的方法List和Set已经全部继承,现在用ArrayList实现类来做:
首先建立一个接口>>>>!向下看
Collection c=new ArrayList();
Collection需要添加泛型,则
Collection<String> c=new ArrayList<>();
下面开始一个个测试方法
c.size(); //测试c里面有多少元素
c.isEmpty(); //判断c里面有没有元素,如果没有,返回true
c.add("韩一韬");
c.add("韩er韬");
c.add("韩san韬"); //向容器里添加字符串
c.remove("韩一韬"); //从容器里面移除一个字符串
移除并非删除
Object[] objs=c.toArray(); //转化为Object数组
System.out.println(c.contains("韩一韬")); //是否包含某个字符
下面贴出本节课的全部代码
public class TestList {
public static void main(String[] args) {
Collection c=new ArrayList();
System.out.println(c.size());
System.out.println(c.isEmpty());
c.add("韩一韬");
c.add("韩er韬");
c.add("韩san韬");
System.out.println(c.contains("韩一韬"));
Object[] objs=c.toArray();
System.out.println(objs[1]);
c.remove("韩一韬");
System.out.println(c);
}
}
下面来测试集合之间常用的方法:
.addAll() 把另一个集合里所有元素加进来;
public class TestList {
public static void main(String[] args) {
test02();
}
public static void test02() {
Collection<String> list01=new ArrayList<>();
list01.add("aa");
list01.add("bb");
list01.add("cc");
Collection<String> list02=new ArrayList<>();
list02.add("aa");
list02.add("dd");
list02.add("ee");
System.out.println("list01:"+list01);
list01.addAll(list02);
System.out.println("list01:"+list01);
}
}
输出结果为:
list01:[aa, bb, cc]
list01:[aa, bb, cc, aa, dd, ee]
.removeAll() 把两个集合中相同的部分删掉
list01.removeAll(list02);
输出结果为:
list01:[aa, bb, cc]
list01:[bb, cc]
.retainAll() 取交集
list01.retainAll(list02);
输出结果为:
list01:[aa, bb, cc]
list01:[aa]
.containsAll() 是否包含
System.out.println(list01.containsAll(list02));
输出结果:false