Collection、List、Set都是接口
ArrayList、vector、LinkedList、HashSet、TreeSet都是实现类
集合的由来:
我们学习的是面向对象语言,而面向对象语言对事物的描述是通过对象提现的,为了方便对多个对象进行操作,我们就必须把这多个对象进行存储。
而要想存储多个对象,就不能是一个基本变量,而应该是一个容器类型的变量。
有哪些容器类型呢?
数组和StringBuffer。但是StringBuffer的结果是一个字符串,不一定满足我们的需求,所以我们只能选择数组,这就是对象数组。
而对象数组又不能适应变化的需求,因为数组的长度是固定的,这个时候,为了适应变化的需求,Java就提供了集合类供我们使用。
数组和集合的区别:
A:长度区别
数组长度固定
集合长度可变
B:内容不同
数组存储的是同一种类型数据
集合可以存储不同类型的元素
C:元素的数据类型问题
数组可以存储基本的数据类型,也可以存储引用数据类型
集合只能存储引用类型(存储对象)