Java的陣列集合概括

2021-07-16 05:54:56 字數 932 閱讀 7099

1.1

、arraylist

底層是陣列實現的,執行緒不安全,查詢和修改快,增刪比較慢

1.2、linkedlist

底層是鍊錶實現的,執行緒不安全,增刪比較快,查詢和修改計較慢

1.3、vector

底層是陣列實現的,執行緒是安全的,無論增刪改查都比較慢

結論:

如果查詢和修改多,用

arraylist

如果增和刪多,用

linkedlist

如果都多,用

arraylist

2.1、

hashset

底層是雜湊演算法實現的

linkedhashset

底層是鍊錶實現的,但是也是可以保證元素唯一,和

hashset

原理一樣

2.2、treeset

底層是二叉樹演算法實現

結論:一般在開發的時候不需要對儲存的元素排序,所以在開發的時候大多用

hashset

,hashset

的效率比較高

treeset

在面試的時候比較多

底層是雜湊演算法,針對鍵

3.1.1

、linkedhashmap

底層是鍊錶,針對鍵

3.2、treemap

底層是二叉樹演算法,針對鍵

結論:

開發中用

hashmap

比較多,

Java各種集合的實現要點概括

arraylist是list介面的可變陣列非同步實現,並允許包括null在內的所有元素。底層使用陣列實現 該集合是可變長度陣列,陣列擴容時,會將老陣列中的元素重新拷貝乙份到新的陣列中,每次陣列容量增長大約是其容量的1.5倍,這種操作的代價很高。採用了fail fast機制,面對併發的修改時,迭代器很...

Java的陣列和集合

arraylist實現了randomaccess介面,是隨機訪問的,各個元素之間沒有關係。而foreach查詢是iterator的變形用法,所以arraylist用foreach查詢,就需要強制建立一些互相知曉的關係,所有用foreach遍歷arraylist比較耗時,用下標方式遍歷性能較高。而li...

java 集合轉陣列

寫了乙個測試例子 如下 test public void enfor for string str abc collectionmoney new arraylist money.add rmb money.add doller money.add ker money.add jpy money.a...