java學習筆記之集合框架

2021-07-13 08:25:28 字數 716 閱讀 9808

上述類圖中,實線邊框的是實現類,比如arraylist,linkedlist,hashmap等,折線邊框的是抽象類,比如abstractcollection,abstractlist,abstractmap等,而點線邊框的是介面,比如collection,iterator,list等。

發現乙個特點,上述所有的集合類,都實現了iterator介面,這是乙個用於遍歷集合中元素的介面,主要包含hashnext(),next(),remove()三種方法。它的乙個子介面linkediterator在它的基礎上又新增了三種方法,分別是add(),previous(),hasprevious()。也就是說如果是先iterator介面,那麼在遍歷集合中元素的時候,只能往後遍歷,被遍歷後的元素不會在遍歷到,通常無序集合實現的都是這個介面,比如hashset,hashmap;而那些元素有序的集合,實現的一般都是linkediterator介面,實現這個介面的集合可以雙向遍歷,既可以通過next()訪問下乙個元素,又可以通過previous()訪問前乙個元素,比如arraylist。

還有乙個特點就是抽象類的使用。如果要自己實現乙個集合類,去實現那些抽象的介面會非常麻煩,工作量很大。這個時候就可以使用抽象類,這些抽象類中給我們提供了許多現成的實現,我們只需要根據自己的需求重寫一些方法或者新增一些方法就可以實現自己需要的集合類,工作流昂大大降低。

java集合框架概述(學習筆記)

1 集合概念 是一種工具類,是一種容器,儲存任意數量的具有共同屬性的物件。2 集合的作用 在類的內部,對資料進行組織 簡單而快速的搜尋大數量的條目 有的集合介面提供了一系列排列有序的元素,並且可以在序列中間快速的插入或者刪除有關元素。有的集合介面提供了對映關係,可以通過關鍵字去快速查詢到對應的唯一物...

Java學習之集合框架(中)

1.map介面 1 map提供了一種對映關係,其中的元素是以鍵值對的形式儲存的,能夠實現根據key快速查詢value 2 map中的鍵值對以entry型別的物件例項形式存在的 3 key鍵不可以重複,value值可以重複 1.常用方法 1 put k key,v value 新增對映和修改對映 2 ...

java 集合框架筆記

hashmap 底層的實現是陣列與鍊錶,允許使用null鍵與null值,不保證儲存的順序,執行緒不安全。每個entry中儲存key,value,next 通過key的hash值,計算entry應該儲存在陣列中的位置,出現衝突時,通過鍊錶增加到陣列元素的後面,儲存的位置基本和value沒有關係。jdk...