答:分為三種集合 list、set、map
list:arraylist、linkedlist、vector
set:hashset、linkedhashset、treeset
map:hashmap、hashtable、linkedhashmap、treemap、properties
properties是乙個特殊的map,用於載入配置檔案。
答:1、hashmap不考慮同步,執行緒不安全;hashtable使用了synchronized 關鍵字,可同步,執行緒安全。
2、hashmap 鍵值對允許為空,hashtable鍵值對不允許為空
3、hashmap和hashtable的父介面不同
答:傳入兩個不同內容的元素,可最後插入集合的時候,它們的雜湊值是不同,但經過雜湊演算法分配的位址也是一樣的,就是兩個元素在雜湊表中的位置一樣,
需要在這個位置鏈出乙個位置,放元素。 這個過程叫連位址法。
答:兩者的擴容規則不同,arraylist的擴容規則是 新容量=舊容量+舊容量/2;vector的擴容規則是 新容量的=舊容量+擴容因子;
arraylist執行緒不安全,vector執行緒安全,linkedlist執行緒不安全。
linkedlist底層資料結構是鍊錶、arraylist和vector底層資料結構是陣列。
linkedlist實現了list介面外,還實現了棧介面,佇列介面。可以使用棧和佇列的方法,棧push、pop 等 佇列 add和remove等
答:在object是重寫hashcode和equalsf方法
1、hashcode是為了雜湊演算法計算儲存的位置
2、equals是為了保證的元素在雜湊表中的唯一性
答:要提供比較策略,內部比較器和外部比較器
內部比較器:object內部實現comparable介面並實現compareto方法。
外部比較器:乙個自定義比較器實現comparator介面並實現compare方法,在將object存入treeset時,把自定義比較器放入。
在將object存入treeset時,匿名內部類 new comparator 並實現compare方法。
複習七(集合)
判斷內容是否存在 集合名.contains 內容 有返回true linkedlist方法 addfirst 內容 新增第乙個內容 addlast 內容 新增最後乙個內容 getfirst 返回列表第乙個元素 getlast 返回列表最後乙個元素 removefirst 刪除第乙個元素 remove...
JAVA複習5(集合 ArrayList)
所謂集合指的就是一套動態物件陣列,在實際開發中陣列的概念的一定會使用的,但是陣列的問題是一旦開闢空間則長度不可改變 其實就是對資料結構的一種封裝,使用者不用去編寫,直接使用。由於資料結構開發起來比較困難,還必須考慮效能問題 3.1 集合中需要掌握的核心介面 collection list set m...
PL SQL複習五 集合方法
1.exists 判斷某集合元素是否存在 declare type ename table type is table of emp.ename type ename table ename table type begin if ename table.exists 1 then dbms out...