天天看点

黑马程序员_日记30_Java集合框架概述

 ——- android培训、java培训、期待与您交流! ———-

集合框架概述

正如数据被封装在对象里面,对象则封装在集合。

所以,集合就是对象的一种存储方式。

数组也可以存储对象,那么数组和集合的区别是什么呢?

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

数组只可以存储基本数据类型,而集合只可以存取对象。

集合的特点:

1 集合只能存储对象

2 集合的长度是可变的

3 集合可以存储不同类型的对象

换言之,集合就是各种各样的容器,那么为什么会出现这么多的容器呢?

因为每一个容器的数据存储方式都千差万别。

而这个存储方式我们称之为:数据结构。

集合体系如下图所示。

黑马程序员_日记30_Java集合框架概述

下面谈谈集合常用的接口以及共性方法

黑马程序员_日记30_Java集合框架概述

Collection接口锁包含的共性方法有:

添加一个元素add(Object obj)

添加一个集合addAll(Collection)

清空集合clear()

移除一部分元素removeAll(Collection)

取交集retainAll(Collection)

转成数组toArray()

迭代取出iterator()

//创建集合

ArrayList al = new ArrayList();

//1 添加

al.add(“java”);//注意添加的是Object类型的

//2 获取集合长度,集合中包含的元素个数

al.size();

//打印集合

System.out.println(al);

举例:

Person p = new Person();

ArrayList al = new ArrayList();

al.add(p);

注意:

1 add方法添加的参数是Object

2 存储的都是地址值

如下图所示。

黑马程序员_日记30_Java集合框架概述

//删除元素

al.remove(“number003”);

黑马程序员_日记30_Java集合框架概述

//清空集合

al.clear();

黑马程序员_日记30_Java集合框架概述

//判断元素

包 含:boolean flag = al.contains(“number003”);

黑马程序员_日记30_Java集合框架概述

是否为空集:boolean flag2 = al.isEmpty();

黑马程序员_日记30_Java集合框架概述
import java.util.*;
class Demo
{
    public static void main(String[] args)
    {
        //创建集合
        ArrayList al = new ArrayList();

        //添加元素
        al.add("number001");
        al.add("number002");
        al.add("number003");
        al.add("number004");

        System.out.println("集合的长度:"+al.size());

        //打印集合
        System.out.println(al);

        //删除元素
        //al.remove("number003");

        //打印集合
        //System.out.println(al);

        //清空集合
        //al.clear();

        //打印集合
        //System.out.println(al);

        //判断元素
        //boolean  flag = al.contains("number003");
        //System.out.println(flag);
        //boolean flag2 = al.isEmpty();
        //System.out.println(flag2);

    }
}
           

继续阅读