數(shù)據(jù)庫連接池有哪幾種 list,map,set,三個接口,存取元素時,各有什么特點?
list,map,set,三個接口,存取元素時,各有什么特點?3. 首先,list和set的上層接口是collection接口。列表的底層數(shù)據(jù)按數(shù)組存儲。它有常用的實現(xiàn)類ArrayList和Linke
list,map,set,三個接口,存取元素時,各有什么特點?
3. 首先,list和set的上層接口是collection接口。列表的底層數(shù)據(jù)按數(shù)組存儲。它有常用的實現(xiàn)類ArrayList和LinkedList。向量現(xiàn)在基本上沒用了。Vector和ArrayList是數(shù)組,插入數(shù)據(jù)速度慢,查詢速度快。不同的是vector是線程安全的,所以它的處理速度不如ArrayList快。鏈表是一種鏈表結構,可以快速存儲數(shù)據(jù),也可以慢速查詢。4集合最重要的特性是沒有重復的元素。集合有自己的排序方法,所以取數(shù)的順序不同于存儲的順序。常用的實現(xiàn)類hashsethashset存儲判斷值的哈希值,否則不存儲。map接口是一組鍵值對。鍵不能重復,值也不重要。地圖集也有自己的排序方法。它通常用于實現(xiàn)類HashMap。實際地圖集存儲的是地圖。
ArrayList和LinkedList各自的特點是什么?
ArrayList在集合末尾刪除或添加元素所需的時間相同,但在列表中間添加或刪除元素所需的時間要長得多。但在基于索引查找元素時,速度非常快。LinkedList在集合中的任意位置插入和刪除元素所需的時間相同,但根據(jù)索引查詢元素的速度較慢。ArrayList和LinkedList是實現(xiàn)list接口以存儲一系列對象引用的容器類。它們可以添加、刪除、修改和查詢元素。擴展名:在ArrayList集中添加或刪除元素時,當前列表中的所有元素都將被移動。在LinkedList集合中添加或刪除元素的成本是固定的。LinkedList集不支持有效的隨機訪問,因為它可能會產(chǎn)生輔助項行為。ArrayList的空間浪費主要體現(xiàn)在列表末尾預留了一定的容量空間,LinkedList的空間開銷則體現(xiàn)在每個元素都消耗了相當大的空間。