JavaEE基础知识

集合


一、概念

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

二、特点

  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接口下的实现类调用,遍历集合、删除元素、添加元素、替换元素、指定下标开始遍历元素、倒叙遍历

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值