java.until.Map,Set,List的资料整理

原创 2004年09月13日 09:02:00

Collections => Collection是所有List跟Set的始祖,List必須以特定次序來持有物件,Set無法擁有重複元素
========================
ArrayList => 用Array實做的List,允許快速隨機存取,相較於LinkedList 不適合拿來進行元素安插和移除動作
LinkedList => 提供最佳循序存取,適合安插和移除元素,隨機存取動作比起ArrayList緩慢
========================
HashSet => 是一種collection,但是只存放唯一值,是把搜尋時間看的很重要的set,用hash方式實作的set,故access time complexity = O(1)

TreeSet => 同上,但是存入的元素都會經過排列,所以速度比HashSet 慢一點

LinkedHashSet =>
Performance is likely to be just slightly below that of HashSet, due to the added expense of maintaining the linked list, with one exception: Iteration over a LinkedHashSet requires time proportional to the size of the set, regardless of its capacity. Iteration over a HashSet is likely to be more expensive, requiring time proportional to its capacity.

BitSet =>
能夠高效率的儲存大量 [ 1 / 0 ] (開/關) 資料
========================
HashMap => 用來取代HashTable,儲存 (key/value) pairs
TreeMap => 儲存 (key/value) pairs,會自動根據Key值排序

LinkedHashMap =>
Performance is likely to be just slightly below that of HashMap, due to the added expense of maintaining the linked list, with one exception: Iteration over the collection-views of a LinkedHashMap requires time proportional to the size of the map, regardless of its capacity. Iteration over a HashMap is likely to be more expensive, requiring time proportional to its capacity.

IdentityHashMap =>
This has better locality for large tables than does using separate arrays.) For many JRE implementations and operation mixes, this class will yield better performance than HashMap (which uses chaining rather than linear-probing

WeakHashMap => 這個map中,由於每個Value僅存在一個實體,因而節省了儲存空間,一但程式需要某個Value,便在map中搜尋既有的物件,並使用找到的那個物件(而非重新再造一個),由於這是一種節省儲存空間的技巧,所以能夠方便的讓GC自動清理Key和Value,一但Key不在被使用,便會觸發清理動作


容器简介
1.    容器的分类
1.1.    Collection:一组各自独立的元素,即其内的每个位置仅持有一个元素。
1)    List:以元素安插的次序来放置元素,不会重新排列。
2)    Set:不接爱重复元素,它会使用自己内部的一个排列机制
1.2.    Map:一群成对的key-value对象,即所持有的是key-value pairs。
Map中不能有重复的key,它拥有自己的内部排列机制。
2.    容器中的元素类型都为Object。从容器取得元素时,必须把它转换成原来的类型。

收藏助手
不良信息举报
您举报文章: java.until.Map,Set,List的资料整理
举报原因:
原因补充:

(最多只允许输入30个字)