目录
集合概述
集合顾名思义就是聚集某一类的事物。
在Java中,集合是工具类,可以存储任意数量具有共同属性的对象。
这里你就要有疑问了,既然是这样,那数组不早就已经实现了这个功能了吗?
既然要使用集合的概念,必然有原因。
数组的长度是固定的,如果一类对象的数量是变化的呢?数组就不能胜任这个工作了,只能用到集合
应用场景如下图所示
集合框架结构
集合框架主要分为两个大的接口(我也不太清楚是不是只有这两个接口,因为目前还没有碰到其他的)
它们分别是:Collection和Map
Collection接口主要是存放类的对象,Map接口主要存放的是键值对
键值对是什么意思呢?举个例子
住酒店的时候,会有门牌号,在前台登记的时候,会登记门牌号和住户的姓名,键就是门牌号,值就是住户的姓名
在Collection接口下面又有三个接口,分别是List、Queue、Set
List表示序列,存放的是有序的可以重复的数据
Queue表示队列,存放的也是有序的可以重复的数据
Set表示集,里面存放的是无序的且不能重复的数据
现在讲一下接口的实现类,首先将Collection接口下面的
List接口下面有一个常见的实现类是ArrayList
ArrayList可以看做是一个动态增长的数组(这里就解决了数组长度固定的问题)
Queue接口下面有一个实现类是LinkedList
这个类不仅实现了Queue接口,还实现了List接口,可以将其看做一个长度动态增长的链表
Set接口下面的实现类是HashSet,也就是哈希集(待补充,还没看)
Map接口下面的是实现类HashMap,也就是哈希表(待补充&#