遍歷時只能經過iterator去刪除(添加)元素,不能直接經過集合對象刪除或添加元素數組
HashSet底層是一個HashMap
HashSet添加元素,先判斷hashCode,Set中沒有相同的則直接添加,Set中有相同的元素,則進一步判斷equals,不一樣則添加,相同則添加不成功
HashSet刪除元素,先判斷hashCode,相同則再判斷equals,equals相同則刪除該 安全
一、元素是否相同是經過equals方法進行判斷的 spa
二、Arrays.asList()獲得的是定長的List,不能進行添加和刪除線程
三、ArrayList底層是個數組、LinkedList有雙向隊列功能對象
一、HashMap和Hashtable區別 Hashtable是線程安全的 Hashtable的鍵和值不能爲null 隊列
二、HashMap的底層是一個HashMap.Entry數組hash