JavaEE基础知识

集合

文章目录

  • 集合
    • 一、概念
    • 二、特点
    • 三、集合 vs 数组
    • 四、集合家族
        • Collection家族 -- 接口
        • List家族 -- 接口
        • Set家族 -- 接口
        • Map家族 -- 接口
    • 五、迭代器


一、概念

含义:一组数据的容器,跟数组类似

二、特点

  1. 集合是Java API所提供的一系列类,可以用于动态存放多个对象。–集合只能存对象
  2. 集合与数组的不同在于,集合是大小可变的序列,而且元素类型可以不受限定,只要是引用类型。(集合中不能放基本数据类型,但可以放基本数据类型的包装类)
  3. 集合类全部支持泛型,是一种数据安全的用法。

三、集合 vs 数组

数组:一旦初始化,长度不可变;可以存放基本数据类型;元素类型必须和数组声明时的类型兼容

集合:长度可变的序列;只能存放引用数据类型;元素类型不受限定

四、集合家族

Collection家族 – 接口

提供了基本的增删改查的功能

List家族 – 接口

特点:有序的,且可重复的(添加了很多针对下标操作的方法)

实现类:

  1. ArrayList

数据结构:一维数组

  1. LinkedList

数据结构:双向链表

  1. Vector

数据结构:一维数组

  1. Stack (extends Vector)

数据结构:一维数组

Set家族 – 接口

特点:无序的,且不可重复的

实现类:

  1. HashSet

数据结构:hash数组

  1. LinkedHashSet (extends HashSet)

数据结构:hash数组

  1. TreeSet

数据结构:二叉树

Map家族 – 接口

特点:键值对存储

实现类:

  1. HashMap
  2. LinkedHashMap
  3. Hashtable
  4. ConcurrentHashMap
  5. TreeMap
  6. Properties

五、迭代器

分类:Iterator、ListIterator

理解:迭代器中使用集合删除元素会报错的原因(modCount != expectedModCount)

Iterator vs ListIterator

Iterator :遍历集合、删除元素

ListIterator:只能List接口下的实现类调用,遍历集合、删除元素、添加元素、替换元素、指定下标开始遍历元素、倒叙遍历

你可能感兴趣的:(Java,集合)