------- android培训、java培训、期待与您交流! ----------
一.集合的基本概念
1.什么集合
集合用来是存储对象的容器。
2.集合与数组的比较
--数组能存储基本数据,也能存储对象,但数组的长度是固定的。数据存储数据时,只能存储同一类型的数据,所以数组存储对象时,只能存储同一种类型的对象。
--集合不能存储基本数据,只能存储对象,但长度不固定。集合存储对象时可以存储不同类型的对象。
3.常见的集合接口
--collection:集合的基类接口,是list和set接口的直接父接口。
--List: 有序的(按对象进入的顺序保存对象)并且可以存放重复的数据。
--Set:无序的(不会按对象进入的顺序保存对象)不可以存放重复的数据。会依据集合内部机制对集合中的对象进行排列。
--Map:是一个根接口,它没有继承任何接口与collection集合接口也没有任何关系。它是一个非常特殊的集合,集合中的对象可分为两大类,一种是键对象(唯一的,不能出现两个相同的键对象),一种是值对象。两个对象间存在一对一(一个键对象对应一个值对象)或者多对一(多个键对象对应一个值对象)的关系。
4.常见的集合接口实现类
--List接口的实现类
--ArrayList,底层采用的是数组存储元素,所以ArrayList对象适合作元素的查询操作,不适合作元素的增删。
--LinkedList,底层采用的是链表存储元素,所以LinkedList对象适合作元素的增删,不适合作元素的查询。
--Vector,底层采用的是数组存储元素。它还有一个特点,即线程安全的。所以Vector对象效率比较低,很少使用。
--Set接口实现类
--直接实现类HashSet,底层是哈希表或散列表。
--间接实现类TreeSet,
--Map接口实现类
--HashMap(直接实现类)
--HashTable(直接实现类)
--Properties(间接实现类)
--TreeMap(间接实现类)