国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Java集合的有序無序問題和線程安全與否問題

Original 2016-11-09 13:20:36 540
abstract:首先,清楚有序和無序是什么意思:集合的有序、無序是指插入元素時,保持插入的順序性,也就是先插入的元素優(yōu)先放入集合的前面部分。 而排序是指插入元素后,集合中的元素是否自動排序。(例如升序排序)1.有序集合:集合里的元素可以根據(jù)key或index訪問.無序集合:集合里的元素只能遍歷。有序集合在屬性的增加,刪除及修改中擁有較好的性能表現(xiàn)。Set集合一般是無序的。實現(xiàn)hash算法的集合一般是無序

首先,清楚有序和無序是什么意思:

集合的有序、無序是指插入元素時,保持插入的順序性,也就是先插入的元素優(yōu)先放入集合的前面部分。 
而排序是指插入元素后,集合中的元素是否自動排序。(例如升序排序)

1.有序集合:集合里的元素可以根據(jù)key或index訪問
.無序集合:集合里的元素只能遍歷。
有序集合在屬性的增加,刪除及修改中擁有較好的性能表現(xiàn)。

Set集合一般是無序的。實現(xiàn)hash算法的集合一般是無序的,例如hashMap,hashTable

List集合一般是有序的。

底層是Tree的一般是有序的,例如TreeSet,TreeMap

底層有l(wèi)ined的一般是有序的,它會用鏈表維護元素的順序。

綜上:

有序的:

List的所有子類

無序的:一般的Set,除了TreeSet,linkedHashSet等底層是樹或者鏈表的。一般的Map,除了底層是樹或者鏈表的。

已知的線程安全集合:

vector,hashtable,statck,enumeration


Release Notes

Popular Entries