Java的Collection接口详解

Collection:

Collection接口是List、Set和Quene接口的父接口,该接口里定义的方法既可以于操作Set集合,也可用于操作List和Quene集合。

Collection接口里定义了诸多操作集合元素的方法,如下表所示:

方法方法描述
boolean add(Object obj)向集合中添加一个数组,如果集合对象被添加操作改变了,返回true。
boolean addAll(Collection c)把集合c里的所有元素添加到指定集合里,如果集合对象被添加操作改变了,则返回true。
void clear()清除集合里的所有元素,集合的长度变为0。
boolean contains(Object obj)返回集合里是否包含指定的元素。
boolean containsAll(Collection c)返回集合里是否包含集合c里的元素。
boolean isEmpty()返回集合是否为空,如果集合的长度为0,则为空,返回true。
Iterator iteratorI()返回一个Iterator对象,用于遍历集合里的元素。
boolean remove(Object obj)删除集合里的指定元素obj,如果集合中包含了一个或多个元素obj时,该方法只删除第一个符合条件的元素,返回true。
boolean removeAll(Collection c)

从集合中删除集合c里包含的所有元素,如果操作改变了调用该方法的集合,返回true。

boolean retainAll(Collection c)从集合中删除集合c里不包含的元素,如果操作改变了调用该方法的集合,返回true。
int size()返回集合里元素的个数。
Object[] toArray()刚方法把集合转换成一个数组,所有的集合元素变成对应的数组元素。

案例:

package test50;

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

public class CollectionDemo {
	public static void main(String[] args) {
		Collection collection = new ArrayList();
		
		collection.add("java");		//向集合collection中添加元素
		collection.add("linux");		
		collection.add(123);	//集合里规定不能存放基本类型的值,但是Java支持自动装箱
		
		Collection collection2 = new ArrayList();
		collection2.add("html");
		collection2.add("php");
		
		System.out.println(collection.size());	//输出collection1的长度	3
		
		System.out.println(collection2.size());	//输出collection2的长度	2
		
		collection.addAll(collection2);		//将集合collection2中的元素都添加到集合collection中
		
		Iterator it = collection.iterator();	//获取collection的迭代器
		
		while (it.hasNext()) {					
			String subject = it.next().toString();
			System.out.println(subject);			//迭代出collection集合中的元素	java,linux,123,html,php
			
			if(subject.equals("html")) {			//匹配到“html”时,删除这个元素
				it.remove();
			}
		}
		System.out.println(collection);				//[java, linux, 123, php]
		
		boolean flag1 = collection.contains("linux");		//判断集合中是否包含linux元素
		
		System.out.println(flag1);				//true
		
		boolean flag2 = collection.containsAll(collection2);	//判断集合中是否包含collection2
		
		System.out.println(flag2);				//collection中移除了“html”,false
		
		boolean flag3 = collection2.isEmpty();		        //判断集中collection2是否为空
		
		System.out.println(flag3);				//false
		
		System.out.println(collection2);			//[html, php]
		
		boolean flag4 = collection.remove("linux");		//移除collection中的“linux”元素
		
		System.out.println(flag4);				//true
		
		System.out.println(collection);				//[java, 123, php]
		
		boolean flag5 = collection.retainAll(collection2);
		
		System.out.println(collection);				//[php]
		
		collection.clear();				        //清楚集合collection中的元素
		
		System.out.println(collection);				//[]
		
		System.out.println(collection.size());		//0
				
	}
}

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值