java集合框架和Collection类详解-----01

java中,最常用的就是数组这种数据结构,但是,如果需要保存的数据的长度不确定,或者数据与数据之间有一定的关联,那么,就需要使用java中的集合框架了。

集合中,存放的内容都是对象而不是基本的数据类型。在没有规定泛型的前提下,所有对象都被当做Object类型存放进去。

java中的集合框架大体如下图


以后的学习中会逐一详解,这里不赘述,直接进入Collection接口的学习。

Collection中,可以进行增,删,查操作。需要注意的是,因为Collection是一个接口,所以在实例化的时候,要用其具体的实现类来进行实例化。

import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;

public class CollectionDemo {
	public static void main(String[] args){
		Collection c = new ArrayList();
		c.add(1);
		c.add("hello");
		System.out.println(c);
		System.out.println("c的容量:"+c.size());
		c.remove(1);
		System.out.println(c);
		System.out.println("删除1以后c的容量:"+c.size());
		Collection person = new HashSet();
		person.add("张三");
		person.add("李四");
		c.addAll(person);
		System.out.println(c);
		System.out.println("添加person集合以后的容量c的容量:"+c.size());
		c.removeAll(person);
		System.out.println(c);
		System.out.println("删除person集合以后的容量c的容量:"+c.size());
		c.clear();
		System.out.println("清除所有c中内容以后:"+c);
	}
}


执行结果为:


这里需要说明的是:1是int类型的数据,但是集合中存放的数据,只能是对象,而不能是数据类型,之所以没有报错,是因为java对基本的数据类型有自动装箱和自动拆箱的功能。

如果要遍历集合中的元素,可以使用foreach或者是Iterator接口。

public class TravelCollectionDemo {
	public static void main(String[] args){
		Collection c = new ArrayList();
		c.add("zhang");
		c.add("wang");
		c.add("li");
		c.add("zhao");
		//第一章遍历方式,使用Iteraotr接口进行遍历
		//remove方法删除集合里上一次next方法返回的元素
		Iterator it = c.iterator();
		System.out.println("Iterator进行的遍历:");
		while(it.hasNext()){
			String str = (String) it.next();
			if(str.equals("li")){
				it.remove();
			}
		}
		c.add("li");
		System.out.println("利用Foreach进行遍历");
		//使用foreach进行遍历
		for(Object obj : c){
			String str = (String) obj;
			System.out.println(str);
		}
	}
}
特别需要强调的一点是:在使用Iterator进行遍历的时候,这个时候集合是不能改变的,不能增加或者删除,否则将发生ConcurrentModificationException。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值