Java中的集合框架中的Collection类

目录

 

集合类

集合框架的构成及分类

集合框架中的常用接口

List接口中常用类

Set接口中常用类


集合类

为什么出现集合类?

 面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,就对对象进行存储,集合就是存储对象最常用的一种方式 。

数组和集合类同是容器,有何不同?

数组虽然也可以存储对象,但一旦被定义后其长度是固定的;集合长度是可变的。

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

集合类的特点

集合只用于存储对象,集合长度是可变的,集合可以存储不同类型的对象。

集合中为什么会出现不同的容器?

因为每一个容器对数据的存储方式不同。这个存储方式称之为数据结构。

集合框架的构成及分类

集合框架中的常用接口

Collection接口有两个子接口:
List(列表) ,Set(集)
List:可存放重复元素,元素存取是有序的。
Set:不可以存放重复元素,元素存取是无序的。

List接口中常用类

  1. Vector:线程安全,但速度慢,已被ArrayList替代
  2. ArrayList:线程不安全,查询速度快;
  3. LinkedList:链表结构,增删速度快

Set接口中常用类

  1.  HashSet  :线程不安全,存取速度快
  2. TreeSet  :线程不安全,可以对Set集合中的元素进行排序。

取出LIst集合中元素的方式:

get(int index):通过脚标获取元素。
iterator():通过迭代方法获取迭代器对象

什么是迭代器?

迭代是取出集合中元素的一种方式,如同抓娃娃游戏机中的夹子。

将迭代器通过内部类的形式来进行描述。
通过容器的iterator()方法获取该内部类的对象。

因为Collection中有iterator方法,所以每一个子类集合对象都具备迭代器。

用法:

Iterator iter = l.iterator();  //l是集合类对象
while(iter.hasNext())
{
System.out.println(iter.next());
}

或者:

for(Iterator iter = iterator();iter.hasNext(); )
{
System.out.println(iter.next());
}

 

迭代注意事项:

  1. 迭代器在Collcection接口中是通用的,它替代了Vector类中的Enumeration(枚举);
  2. 迭代器的next方法是自动向下取元素,要避免出现NoSuchElementException;
  3. 迭代器的next方法返回值类型是Object,所以要记得类型转换;

Collection定义了集合框架的共性功能

  • 添加    

       add(e);    //add方法中的参数类型是Object。以便于接收任意类型对象

       addAll(collection);

  • 删除
     remove(e);
     removeAll(collection);
     clear();
  • 判断 

      contains(e);
      isEmpty();

  • 获取

    iterator();
    size(); 

  • 获取交集。
    retainAll();
  • 集合变数组

     to Array();

注意:集合中存储的都是对象的引用(地址)。

展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客
应支付0元
点击重新获取
扫码支付

支付成功即可阅读