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)
    );
    }
}
相关推荐
m0_571957582 小时前
Java | Leetcode Java题解之第543题二叉树的直径
java·leetcode·题解
一点媛艺3 小时前
Kotlin函数由易到难
开发语言·python·kotlin
姑苏风3 小时前
《Kotlin实战》-附录
android·开发语言·kotlin
奋斗的小花生4 小时前
c++ 多态性
开发语言·c++
魔道不误砍柴功4 小时前
Java 中如何巧妙应用 Function 让方法复用性更强
java·开发语言·python
NiNg_1_2344 小时前
SpringBoot整合SpringSecurity实现密码加密解密、登录认证退出功能
java·spring boot·后端
闲晨4 小时前
C++ 继承:代码传承的魔法棒,开启奇幻编程之旅
java·c语言·开发语言·c++·经验分享
老猿讲编程4 小时前
一个例子来说明Ada语言的实时性支持
开发语言·ada
Chrikk5 小时前
Go-性能调优实战案例
开发语言·后端·golang
幼儿园老大*5 小时前
Go的环境搭建以及GoLand安装教程
开发语言·经验分享·后端·golang·go