日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

hashlist java_java中集合类HashSet、ArrayList、LinkedList总结

發布時間:2025/4/5 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 hashlist java_java中集合类HashSet、ArrayList、LinkedList总结 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

【HashSet】

1. HashSet存儲不能夠存儲相同的元素,元素是否相同的判斷:重寫元素的equals方法。equals方法和hashCode方法必須兼容,如:equals方法判斷的是用戶的名字name,那么hashCode的返回的hashcode必須是name。hashcode();

2. HashSet存儲是無序的,保存的順序與添加的順序是不一致的,它不是線性結構,而是散列結構,(通過散列表:散列單元指向鏈表)。因此,HashSet的查詢效率相對比較高。

3. HashSet不是線程安全的,不是線程同步的。這需要自己實現線程同步:Collections.synchronizedCollection(),方法實現。

【ArrayList】

1. 不是線程安全的,不是線程同步的。

2.ArrayList是通過可變大小的數組實現的,允許null在內的所有元素。

3.ArrayList中存放順序和添加順序是一致的。并且可重復元素。

4.ArrayList適合通過位子來讀取元素。

【LinkedList】

1.不是線程安全的,不是線程同步的。

2.LinkedList是通過雙向循環鏈表來實現的。

3.存放順序和添加順序是一致的。可添加重復元素。

4.適合鏈表頭尾操作和插入指定位置元素的操作。

ArrayList和LinkedList之間的數據傳遞可通過toArray()方法。

【HashMap】

1.非線程安全,不是線程同步。

2.添加順序和保存的順序是不一致的。

3.必須重寫key的equals方法和hashCode方法。

4.HashMap的實際容量=容量*因子,默認為16*0.75=12.所以考慮到HashMap的添加的效率問題,根據實際情況來設計它的開始的默認的容量。

的操作方法根據api來查找。

5.添加的值中是允許有null的值存在的。

【Hashtable】

1.是線程安全的,是線程同步的,在實現線程同步的時候是不需要手動來實現線程同步的。因此相對效率低。

2.添加的順序和保存的順序是不一致的。

3.添加的值中是不允許有null值存在的。

【TreeMap】

1.非線程安全,不是線程同步的。在必要的情況下必手動實現線程同步。

2.在元素的添加,刪除和定位映射中效率相對hashMap較低。但是在排序方面TreeMap比較實用。

3.添加的值中允許有null值,但是在輸出的時候會報空指針異常。

以上信息并非原創,僅作收藏學習用。

總結

以上是生活随笔為你收集整理的hashlist java_java中集合类HashSet、ArrayList、LinkedList总结的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。