Map、Set、List、Queue、Stack的特点与用法

时间:2022-07-07 19:34:41
Map

1、键值对的对象,一个映射不能包括重复的键;

2、某些映射实现可以确保顺序,如TreeMap类;

3、另一些映射不能保证顺序,如HashMap类;

4、KeySet()抽取key序列;

5、Map中的所有Keys生成一个集合,不重复

6、Values()抽取value序列;

7、Map中的所有Values生成一个Collection

List

1、可以随机访问包含的元素,元素是有序的;

2、可以在任意位置增、删元素;

3、不管访问多少次,元素位置不变

4、允许重复元素;

5、用Iterator实现单向遍历;

6、用ListIterator实现双向遍历;

Queue

1、先进先出;

2、用offer()加入元素;

3、用poll()来获取移除元素;

4、用element()或peek()获得前端元素;

Stack

1、后进先出

2、继承Vector,线程同步,即线程安全的;

3、使用push、pop、peek、empty、search等方法;

Set

1、包含不重复元素的Collection;

2、Set不包含o1.equals(o2)的元素;

3、对o1和o2 最多包含一个null元素;

4、可以随机访问包含的元素;

5、只能用Iterator实现单向遍历;

6、Set没有同步方法;