从上面的集合框架图可以看到,Java集合框架主要由Collection和Map两个根接口及其子接口、实现类组成。 collection 的子接口包括List,set,queue。而Map包括三个实现类HashMap,HashTable,linkeHashMap。
集合接口| 序号 | 接口描述 |
|---|---|
| 1 | Collection接口是最基本的集合接口,java不直接提供该接口的实现类,但提供了继承于collection接口的子接口,如List,Set,Queue。 |
| 2 | Map 接口存储一组键值对象,提供key(键)到value(值)的映射。 |
| 3 | List接口的特点是有序可重复,能通过索引访问来访问List中的元素。有序是指插入是什么顺序,遍历的时候就是什么顺序。 |
| 4 | Set接口的特点是无序不可重复的,没有索引。Set接口有一个子接口SortedSet,其特点是有序不可重复。 |
| 5 | Queue(队列)接口的特点是只允许在表的前端进行删除操作,而在表的后端进行插入操作。 |
| 6 | SortedMap 继承于 Map,使 Key 保持在升序排列。 |
1、List,Set都是继承自Collection接口
2、List特点:元素有放入顺序,元素可重复 ,Set特点:元素无放入顺序,元素不可重复,重复元素会覆盖掉,(元素虽然无放入顺序,但是元素在set中的位置是有该元素的HashCode决定的,其位置其实是固定的,加入Set 的Object必须定义equals()方法 ,另外list支持for循环,也就是通过下标来遍历,也可以用迭代器,但是set只能用迭代,因为他无序,无法用下标来取得想要的值。)
3、Set和List对比:
Set:检索元素效率低下,删除和插入效率高,插入和删除不会引起元素位置改变。



