Collection是单列集合的祖宗接口,它的功能是全部单列集合都可以继承使用。
1.添加元素
java
public class test {
public static void main(String [] args) {
Collection<String> col=new ArrayList<>();
col.add("aaa");
col.add("bbb");
System.out.println(col);
}
}
2.清空元素
java
public class test {
public static void main(String [] args) {
Collection<String> col=new ArrayList<>();
col.add("aaa");
col.add("bbb");
col.clear();//清空元素
System.out.println(col);
}
}
3.删除元素
java
public class test {
public static void main(String [] args) {
Collection<String> col=new ArrayList<>();
col.add("aaa");
col.add("bbb");
col.remove("aaa");//删除元素
System.out.println(col);
}
}
4.集合中是否包含元素
java
public class test {
public static void main(String [] args) {
Collection<String> col=new ArrayList<>();
col.add("aaa");
col.add("bbb");
col.contains("bbb");//是否包含
System.out.println(col.contains("bbb"));
System.out.println(col);
}
}
5.集合是否为空
java
public class test {
public static void main(String [] args) {
Collection<String> col=new ArrayList<>();
col.add("aaa");
col.add("bbb");
System.out.println(col.isEmpty());//是否为空
//System.out.println(col);
}
}
6.集合长度
java
public class test {
public static void main(String [] args) {
Collection<String> col=new ArrayList<>();
col.add("aaa");
col.add("bbb");
System.out.println(col);
System.out.println(col.size());//集合长度
}
}
Collection遍历方式
1.迭代器遍历
迭代器在java中的类是Iterator,迭代器是集合专用的遍历方式。迭代器不依赖索引。
java
public class test {
public static void main(String [] args) {
Collection<String> col=new ArrayList<>();
col.add("aaa");
col.add("bbb");
col.add("ccc");
col.add("ddd");
//利用迭代器遍历
Iterator<String> it=col.iterator();
while(it.hasNext()) {
String str=it.next();
System.out.println(str);
}
}
}
迭代器遍历完后,指针不会复位。
迭代器遍历时,不能用集合的方法对集合进行增加或删除。迭代器中有删除方法:it.remove();
增加方法没有。
迭代器删除元素:
java
public class test {
public static void main(String [] args) {
Collection<String> col=new ArrayList<>();
col.add("aaa");
col.add("bbb");
col.add("ccc");
col.add("ddd");
//利用迭代器遍历
Iterator<String> it=col.iterator();
while(it.hasNext()) {
String str=it.next();
if("aaa".equals(str)) {
it.remove();
}
//System.out.println(str);
}
System.out.println(col);
}
}
2.增强for遍历
增强for遍历底层就是迭代器,为简化迭代器代码书写的;所有的单列集合和数组才能用增强for遍历;修改增强for遍历中的变量,不会改变集合中原本数据。
java
public class test {
public static void main(String [] args) {
Collection<String> col=new ArrayList<>();
col.add("zhangsan");
col.add("lisi");
col.add("wangwu");
//利用增强for遍历
for(String s:col) {
System.out.println(s);
}
}
}
3.Lambda表达式
先用匿名内部类:
java
public class test {
public static void main(String [] args) {
Collection<String> col=new ArrayList<>();
col.add("zhangsan");
col.add("lisi");
col.add("wangwu");
//利用Lambda表达式
col.forEach(new Consumer<String>(){//先用匿名内部类
@Override
public void accept(String t) {
System.out.println(t);
}
});
}
}
再用lambda表达式
java
public class test {
public static void main(String [] args) {
Collection<String> col=new ArrayList<>();
col.add("zhangsan");
col.add("lisi");
col.add("wangwu");
//利用Lambda表达式
col.forEach((String t)->
System.out.println(t)
);
}
}