Collection

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)
    );
    }
}
相关推荐
跟着珅聪学java20 分钟前
spring boot +Elment UI 上传文件教程
java·spring boot·后端·ui·elementui·vue
我命由我1234525 分钟前
Spring Boot 自定义日志打印(日志级别、logback-spring.xml 文件、自定义日志打印解读)
java·开发语言·jvm·spring boot·spring·java-ee·logback
lilye6626 分钟前
程序化广告行业(55/89):DMP与DSP对接及数据统计原理剖析
java·服务器·前端
徐小黑ACG1 小时前
GO语言 使用protobuf
开发语言·后端·golang·protobuf
0白露2 小时前
Apifox Helper 与 Swagger3 区别
开发语言
Tanecious.3 小时前
机器视觉--python基础语法
开发语言·python
叠叠乐3 小时前
rust Send Sync 以及对象安全和对象不安全
开发语言·安全·rust
战族狼魂4 小时前
CSGO 皮肤交易平台后端 (Spring Boot) 代码结构与示例
java·spring boot·后端
Tttian6225 小时前
Python办公自动化(3)对Excel的操作
开发语言·python·excel
xyliiiiiL5 小时前
ZGC初步了解
java·jvm·算法