1. 程式人生 > >Map、Set、List、Queue、Stack的特點與用法。

Map、Set、List、Queue、Stack的特點與用法。

Map主要用於儲存健值對,根據鍵得到值,因此不允許鍵重複(重複了覆蓋了),但允許值重複。Map中可以將Key和Value單獨抽取出來,其中KeySet()方法可以將所有的keys抽取正一個Set。而Values()方法可以將map中所有的values抽取成一個集合。

set,無序不可重複元素的集合,set中最多包含一個null元素,只能用Lterator實現單項遍歷,Set中沒有同步方法。

list,有序的可重複集合。 可以在任意位置增加刪除元素。 用Iterator實現單向遍歷,也可用ListIterator實現雙向遍歷。

Queue遵從先進先出原則。使用時儘量避免add()和remove()方法,而是使用offer()來新增元素,使用poll()來移除元素

,它的優點是可以通過返回值來判斷是否成功。LinkedList實現了Queue介面。Queue通常不允許插入null元素。

Stack遵從後進先出原則Stack繼承自Vector。它通過五個操作對類Vector進行擴充套件,允許將向量視為堆疊,它提供了通常的push和pop操作,以及取堆疊頂點的peek()方法、測試堆疊是否為空的empty方法等