hashSet和List集合存儲數據的結構


List集合存儲數據的結構

 

 

堆棧:先進后出 例如擔架 先進去的 后出來

 

---------------------------------------------------------------------------------------------------------

 

 

 

 隊列:先進的先出 后進的后出

 

 

-------------------------------------------------------------------------------------------------------------------------------------

 

 

 數組:增刪慢 查詢快 因為有下標

-----------------------------------------------------------------------------------------------

 

 鏈表:增刪快 查找慢 因為鏈表不存在下標

ArrayList是數組,LinkedList是鏈表

ArrayList和linkedList的區別:

ArrayList底層是數組 查找快 增刪慢 因為有下標 所以查找快 因為數組長度不可變 需要new一個新數組所以增刪慢

LinkedList 底層是鏈表 查找慢 增刪快 因為沒有下標 所以查找慢 他們是節點之間的連接 不需要新建一個鏈表 

JAVA中的數據結構有哪些:堆棧,隊列 ,數組,鏈表

 

ArrayList集合

 

 

ArrayList集合數據存儲的結構是數組結構。元素增刪慢,查找快,由於日常開發中使用最多的功能為查詢數據、遍歷數據,所以ArrayList是最常用的集合。

 

 LinkedList集合

 

 

 

 

Vector集合

Vector集合數據存儲的結構是數組結構,為JDK中最早提供的集合。Vector中提供了一個獨特的取出方式,就是枚舉Enumeration,它其實就是早期的迭代器

。此接口Enumeration的功能與 Iterator 接口的功能是類似的。Vector集合已被ArrayList替代。枚舉Enumeration已被迭代器Iterator替代。

 

 

Set接口

那就是Set接口,它里面的集合,所存儲的元素就是不重復的。

Set接口介紹

查閱Set集合的API介紹,通過元素的equals方法,來判斷是否為重復元素,

 HashSet集合介紹

查閱HashSet集合的API介紹:此類實現Set接口,由哈希表支持(實際上是一個 HashMap集合)。HashSet集合不能保證的迭代順序與元素存儲順序相同。

HashSet集合,采用哈希表結構存儲數據,保證元素唯一性的方式依賴於:hashCode()與equals()方法。

 HashSet集合存儲數據的結構(哈希表)

數組和鏈表的集合體就叫哈希表

 

 hashcode方法

 

 

 

 

 HashSet存儲圖

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM