一.類圖
二.總結
1. collection和map是集合的總接口,list,set,queue繼承collection,hashmap,treemap,weakhashmap,hashtable繼承map
2. list是元素有序的,使用了索引,允許為空,允許重複. 繼承它的實作類有Vector(同步數組),Arraylist(不同步數組),linkedlist(連結清單),stack繼承vector,加上5個額外的方法得以當做堆棧使用(push,pop,peek,empty,search)
3. set是集,元素無序,不允許重複.允許有一個null, 實作類hashset(裡面是集,隻添加對象,沒有鍵,根據對象生成hashcode,哈希表,散清單,hashcode(),equals()去重複), treeset(元素需能比較,以樹的形式存儲,實作Comparable接口,覆寫compareTo方法), linkhashset(連結清單+哈希表的接口,有序的hashset,使得它怎麼存可以怎麼取出來)
4. map不能有重複key, hashmap可以有一個null的鍵和多個null的值,hashtable不準出現null, 多種周遊,values(),entryset(),keySet(),結合for循環或是iterator來周遊. 實作類hashmap,hashtable,weakhashtable,treemap,還有繼承hashtable的linkhashtable. hashmap哈希表結構,鍵值不可重複.weakhashtable會檢查元素是否常用,不常用就去除掉.
5. 同步比較: Vector是同步的,類似于arraylist,繼承的list.放的對象. hashtable是同步的,繼承的是map,常用hashmap比較,放的鍵值對
6. Iterator是超級接口,collection和map都實作了它.是以都可以用疊代器.
7. 散清單(哈希表)的研究