zoukankan      html  css  js  c++  java
  • Collection

    Collection

    Collection作为一个集合类的顶层接口,他没有直接的子类实现,而是通过实现它的子接口来实现集合容器。Collection的特点是作为一个容器,他可以轻松的帮用户实现数据存储,动态扩容,还有方便的元素遍历和快速的增删改查等操作,这些特点都在接口定义的方法中一一体现出来,相比我们用array来存储数据方便不少。
    Collection的子接口主要是三大类分别是List,Set和Queue。这三个接口各有特点。
    #####1.List 是一个顺序存放的容器,他会保存元素的插入顺序,当然元素也可以通过下标位置直接插入和删除。List容器同时允许重复的元素插入和多个null元素。List提供了一个特殊的iterator,叫做ListIterator,这个接口在上文中也有所描述,可以进行双向遍历元素。

    #####2.Set 集合最大的特点是元素不能重复,所有元素都是唯一的存在。Set集合不保证维护元素的顺序。

    #####3.Queue 顾名思义就是队列,队列最大的特点就是FIFO先进先出,与之对应的有栈Stack后进先出。

    Queue在Collection的基础之上又新增加了几个方法:
    offer(E e)与add方法类似,但是当容器存量超出达到上限以后,会插入失败,而报异常。这个方法推荐使用。
    poll()返回并且删除队列的头元素,如果队列为空,返回null
    element()返回但不删除头元素,如果队列为空,会报异常。
    peek()返回但不删除头元素,如果队列为空,返回null。

    #####4.总结: 本文对容器的顶层接口Collection及其子接口做了介绍,在这个接口的规范下,衍生出了非常多的子类,这些子类都风格迥异,各有千秋。但总体来说就是为了满足对容器内部元素的不同操作,无非就是快速存储,读取遍历,排序等等。后面的文章会逐一对其介绍。

  • 相关阅读:
    基于Centos 搭建Jenkins环境
    基于 CentOS 7 搭建 GitLab
    SpringBoot2.x集成WebSocket
    使用jackson序列化json时遇到的坑
    红米3 Flyme5.1.9.5插桩适配长期不定时更新
    教你一招:使用最快速的方式激活windows10专业版
    ubuntu/mint 安装google的拼音输入法
    Ubuntu 14.04.4官方默认更新源sources.list
    Ubuntu(基于Ubuntu)中常用的apt和dpkt命令
    Linux--目录结构解释(转)
  • 原文地址:https://www.cnblogs.com/hd-zg/p/6929596.html
Copyright © 2011-2022 走看看