Java集合————Collection的基本方法

Collection接口的基本方法如下:

add();size();contains();remove();isEmpty();clear();addAll();removeAll();retainAll();toArray();

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

public class Collectionexample {

	public static void main(String[] args) {
		Collection collection=new ArrayList();
		
		// 当你向集合当中添加基本数据类型的时候 系统会帮你进行自动装箱
        // 把基本数据类型变成它的包装类
		boolean add=collection.add("a");
		boolean add2=collection.add("b");
		boolean add3=collection.add("c");
		boolean add4=collection.add(10);
		boolean add5=collection.add(true);
		
		
		System.out.println(collection);
		System.out.println(add);
		System.out.println(add2);
		System.out.println(add3);
		System.out.println(add4);
		System.out.println(add5);
		
		// 获取集合的长度
		System.out.println(collection.size());
		
		// 判断是否包含某个元素
		boolean contains=collection.contains("d");
		System.out.println(contains);
		
		// 从集合中删除一个元素
		boolean remove=collection.remove("a");
		System.out.println(collection);
		System.out.println(remove);
		
		// 判断集合是否为空
		boolean empty=collection.isEmpty();
		System.out.println(empty);
		
		// 清空 集合
		//collection.clear();
		//System.out.println(collection);
		
		/****addAll\removeAll\retainAll****/
		
		System.out.println(collection);
		
		Collection collection1=new ArrayList();
		collection1.add("x");
		collection1.add("y");
		collection1.add("z");
		System.out.println(collection1);
		// addAll方法是 把集合collection的元素取出来加在集合collection1的末尾
		collection1.addAll(collection);
		System.out.println(collection1);
		
		// add 是把集合collection中所有元素 以元素的形式放入集合collection1中
		collection1.add(collection);
		System.out.println(collection1);
		
		//判断collection1中是否包含collection中的所有元素
		boolean containsAll=collection1.containsAll(collection);
		System.out.println(containsAll);
		
		// removeAll 删除 集合collection2 与 集合collection 的重合元素,另一个集合不变只删除交集,重复也可以删除
		Collection collection2=new ArrayList();
		collection2.add("a");
		collection2.add("b");
		collection2.add("c");
		collection2.add("d");
		System.out.println(collection2);
		collection2.removeAll(collection);
		System.out.println(collection2);
		
		
		// retainAll 把两个集合的交集取出来 保存在调用的集合
		Collection collection3=new ArrayList();
		collection3.add("a");
		collection3.add("b");
		collection3.add("c");
		collection3.add("d");
		System.out.println(collection3);
		collection3.retainAll(collection);
		System.out.println(collection3);
		
		
		/*****toArray*****/
		Collection collection4=new ArrayList();
		collection4.add("a");
		collection4.add("b");
		collection4.add("c");
		collection4.add("d");
		
		 // 集合转成数组
		Object[] array=collection4.toArray();
		for(int i=0;i<array.length;i++) {
			System.out.println(array[i]);
		}
		
		Collection collection5=new ArrayList();
		collection5.add(new Student("ysg",18));
		collection5.add(new Student("sxm",18));
		collection5.add(new Student("dp",18));
		
		// 集合转数组  相当于 有一个向上转型
		Object[] array1=collection5.toArray();
		for(int i=0;i<array1.length;i++) {
			Student student=(Student)array1[i];
			System.out.println(student.getName());
		}


		/***迭代器***/
		Collection collection6=new ArrayList();
		collection6.add("a");
		collection6.add("b");
		collection6.add("c");
		collection6.add("d");

		// 获取集合中的迭代器
		Iterator iterator =collection6.iterator();
		//先判断集合中是否有元素
		boolean hasNext=iterator.hasNext();
		System.out.println(hasNext);
		// 从集合中取出元素
		Object next=iterator.next();
		System.out.println(next);
		
		//第二种遍历方法
		while(iterator.hasNext()) {
			Object next1=iterator.next();
			System.out.println(next1);
		}
		
		Collection collection7=new ArrayList();
		collection7.add(new Student("abc",18));
		collection7.add(new Student("def",18));
		collection7.add(new Student("hig",18));
		Iterator iterator2=collection.iterator();
		while(iterator2.hasNext()) {
			Object next2=iterator.next();
			Student student=(Student)next2;
			System.out.println(student.getName());
			}

	}

}

运行结果:

[a, b, c, 10, true]
true
true
true
true
true
5
false
[b, c, 10, true]
true
false
[b, c, 10, true]
[x, y, z]
[x, y, z, b, c, 10, true]
[x, y, z, b, c, 10, true, [b, c, 10, true]]
true
[a, b, c, d]
[a, d]
[a, b, c, d]
[b, c]
a
b
c
d
ysg
sxm
dp
true
a
b
c
d
Exception in thread "main" java.util.NoSuchElementException
at java.util.ArrayList$Itr.next(ArrayList.java:860)

at Collectionexample.main(Collectionexample.java:143)

同一个包中的Student类:

public class Student {
	
	String name;
	int age;
	
	public Student(String name) {
		this.name=name;
	}
	
	public Student(String name,int age) {
		this.name=name;
		this.age=age;
	}
	
	public void setName(String name) {
		this.name=name;
	}
	
	public String getName() {
		return name;
	}

	public static void main(String[] args) {
		Student student=new Student("xyz",18);
		System.out.println(student.getName());
	

}
}

参考:

https://blog.csdn.net/Dzy_water/article/details/79100951

猜你喜欢

转载自blog.csdn.net/weixin_39430584/article/details/80899501