您的位置:首页 > 其它

关于集合框架Collection基础知识点的理解掌握

2014-05-13 10:15 246 查看
本人的博客个人安排是接口之后就是写面向对象中的多态,异常的处理,以及多线程,String等等的相关基础知

但是由于一些客观的因素对个人的影响,最后只好从集合框架开始写,至于接口到集合框架这一部分过一阵子就会补

上。下面开始说一些关于集合框架的相关知识,为学习iterator迭代器做下铺垫。

什么是集合呢?

首先集合就是用于存储对象的容器,并且该容器的长度是可变的。

那么集合和数组的区别有哪些?

1. 集合长度是可变的,而数组长度是固定的。

2. 集合中只能存储对象。 数组中既可以存储对象,又可以存储基本类型数值。

3. 集合中存储的对象可以是任意类型的。数组中只能存储同一类型的对象。

那么有了集合,慢慢的就产生了集合框架的这个概念。由于容器很多,因为每个容器中的数据结构(就是数据在

容器中存储方式)是不同的。容器虽然因为结构有些不同,但是都具备着共性,可以不断地向上抽取,最终就形成集

合框架,该框架的顶层之一就是Collection接口。该接口中定义了集合框架中最共性的功能。最终使用的时候,其实使

用的该框架最子类的对象。

下面是一些增删改查的演示,比较简单。

import java.util.*;

public class Test016
{

public static void main(String[] args)
{
// TODO Auto-generated method stub
method_1();
}
public static void sop(Object obj)
{
System.out.println(obj);
}
public static void method_1()
{
//创建一个集合容器,使用collection接口的子类Arraylist
ArrayList al = new ArrayList();
//添加元素
al.add("java01");
al.add("java02");
al.add("java03");
al.add("java04");
//打印集合
sop(al);
//删除元素
al.remove("java03");
sop(al);

//获取个数,集合长度
sop("size:"+al.size());
//判断元素
sop("java02是否存在与集合当中"+al.contains("java02"));
sop("集合是否为空:"+al.isEmpty());
}
}


补充说明:

1.add方法的参数类型是Object,以便于接收任意类型的对象。

2.集合中存储的都是对象的引用,也就是对象在堆内存中的地址。

public static void method_2()
{
ArrayList al1 = new ArrayList();
al1.add("java01");
al1.add("java02");
al1.add("java03");
al1.add("java04");

ArrayList al2 = new ArrayList();
al2.add("java01");
al2.add("java02");
al2.add("java05");
al2.add("java06");

al1.retainAll(al2);//取交集,al1中只保留和al2相同的元素

sop("al1"+al1);
sop("al2"+al2);

}


method_2方法则是对于集合中取交集的演示。其他还有一些方法在此就不一一演示了,大家可以去查阅API文档
进行更详细的学习。

现在就把学习迭代器之前的一些关于集合的基础写了下,下篇写迭代器的相关知识。通过学习这些基础知识,让

我对集合框架的体系以及共性方法有了初步的认识,加油,努力!~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: