Map

更新於 2024/09/25閱讀時間約 1 分鐘
Map是由Key-Value所組成的
而Key的部分不能重複,因為是Set
  1. HashMap:
    • 使用哈希表存儲鍵值對
    • 平均情況下,基本操作(獲取、插入、刪除)具有常數時間複雜度
    • 不保證項目的特定順序
    • 允許鍵和值為空( 空字串、null)
    • 非線程安全
  2. LinkedHashMap:
    • 保持項目插入的順序
    • 使用哈希表和鏈表實現有序遍歷
    • 提供類似 HashMap 的性能,但稍微慢一些,因為需要維護順序
    • 允許鍵和值為空( 空字串、null)
    • 非線程安全
  3. TreeMap:
    • 根據鍵的自然順序或自定義 Comparator 進行排序
    • 使用紅黑樹結構維護項目
    • 基本操作(獲取、插入、刪除)具有對數時間複雜度
    • 提供有序遍歷
    • 不允許鍵為空,但允許值為空 (因為要以鍵做排序)
    • 非線程安全
  4. ConcurrentHashMap:
    • 提供線程安全的操作,支持併發訪問
    • 將底層數據結構分為多個段,允許對不同段進行並發操作
    • 適用於高並發場景,具有良好的擴展性
    • 對於非並發訪問,性能與 HashMap 相似
    • 允許鍵和值為空( 空字串、null)
簡單來講,併發就是多個執行緒在同個時間內不斷切換、互相搶資源地在處理任務。是在瞬間、極短的時間內!
  1. Hashtable:
    • ConcurrentHashMap 出現後被標記為過時 (deprecated)
    • 提供線程安全的操作,支持併發訪問
    • 提供類似 HashMap 的功能,但具有同步方法
    • 不允許鍵和值為空
  2. WeakHashMap (我完全沒用到過):
    • 允許鍵在不再有強引用時被垃圾回收
    • 適用於動態創建鍵並在內存壓力下釋放的情況
    • 提供類似 HashMap 的功能,但具有弱鍵
    • 非線程安全


我的Java學習日記
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
Set 是繼承 Collection API的一個子接口 interface 唯一的限制是不允許重覆的物件存在 所以當不想有相同的物件出現,就可以選擇用Set
程式建立thread,然後會交給硬體中的scheduler去排定執行、切換資源 我們無法強制指定順序,因為電腦有太多任務需要執行,但資源有限,因此會由scheduler去分配、切換資源 電腦能同時執行多項任務
Error分為三種 Compile time error Runtime error 俗稱(Exception) Logical error
普通的interface:有一個以上的abstract method Functinal Interface...
所有被宣告在interface中的method都是public abstract 所以interface中的method才不需要特地標上修飾符與abstract interface只體現設計方向 而如何實現此設計
abstract method 一定要在 abstract class裡面 abstract class裡面不一定要有abstract method
Set 是繼承 Collection API的一個子接口 interface 唯一的限制是不允許重覆的物件存在 所以當不想有相同的物件出現,就可以選擇用Set
程式建立thread,然後會交給硬體中的scheduler去排定執行、切換資源 我們無法強制指定順序,因為電腦有太多任務需要執行,但資源有限,因此會由scheduler去分配、切換資源 電腦能同時執行多項任務
Error分為三種 Compile time error Runtime error 俗稱(Exception) Logical error
普通的interface:有一個以上的abstract method Functinal Interface...
所有被宣告在interface中的method都是public abstract 所以interface中的method才不需要特地標上修飾符與abstract interface只體現設計方向 而如何實現此設計
abstract method 一定要在 abstract class裡面 abstract class裡面不一定要有abstract method
你可能也想看
Google News 追蹤
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
很喜歡暫時脫離數位世界的時光。不再依靠電子地圖優先查找想去的地方,每個路途上的風景,都是目的地。
Thumbnail
近幾年 Apple Maps 功能突飛猛進,蘋果也在 iOS 17 替 Apple地圖加入離線地圖功能,能夠類似 Google離線地圖功能一樣,能夠讓 iPhone 在沒有行動網路環境下, 也能夠利用 iOS 17 離線地圖進行導航和規劃路線。 要如何在 iOS 17 上使用 Apple Map
Thumbnail
哈囉,資訊爆炸時代的你我,是否也經常需要處理大量的 PDF 文件?這些文件可能包含豐富的知識,但卻也可能因為枯燥而難以消化。現在,讓我們介紹一個能夠讓大家快速瞭解文章結構的方法,透過 Map This 工具,你可以輕鬆又快速地將 PDF 轉換為直觀生動的心智圖,幫助你讓資訊的消化更加輕鬆自在。
Thumbnail
神獸想創新的,是分享有助於人生領悟的幾套養生的故事書工具...
Map是由Key-Value所組成的 而Key的部分不能重複,因為是Set
生活實驗 四○八  Map Pin on God.
別人的地圖找不到自己的路 別人的嘴裡找不到好聽的話 不用和別人說太多自己的事 尾牙抽到大獎的人說我運氣用完 what' the fuck 你中獎還要中傷我 只有安慰獎1000元的人 滴血
Thumbnail
Maples of entropy are releasing and flying, every day recycling with relevance endlessly, thanks to those who ever help me.
Thumbnail
Example code: $data['items']: $items: 本筆記參考: 1. https://docfunc.com/posts/36/foreacharraymap-%E8%88%87-laravel-collection-post
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
很喜歡暫時脫離數位世界的時光。不再依靠電子地圖優先查找想去的地方,每個路途上的風景,都是目的地。
Thumbnail
近幾年 Apple Maps 功能突飛猛進,蘋果也在 iOS 17 替 Apple地圖加入離線地圖功能,能夠類似 Google離線地圖功能一樣,能夠讓 iPhone 在沒有行動網路環境下, 也能夠利用 iOS 17 離線地圖進行導航和規劃路線。 要如何在 iOS 17 上使用 Apple Map
Thumbnail
哈囉,資訊爆炸時代的你我,是否也經常需要處理大量的 PDF 文件?這些文件可能包含豐富的知識,但卻也可能因為枯燥而難以消化。現在,讓我們介紹一個能夠讓大家快速瞭解文章結構的方法,透過 Map This 工具,你可以輕鬆又快速地將 PDF 轉換為直觀生動的心智圖,幫助你讓資訊的消化更加輕鬆自在。
Thumbnail
神獸想創新的,是分享有助於人生領悟的幾套養生的故事書工具...
Map是由Key-Value所組成的 而Key的部分不能重複,因為是Set
生活實驗 四○八  Map Pin on God.
別人的地圖找不到自己的路 別人的嘴裡找不到好聽的話 不用和別人說太多自己的事 尾牙抽到大獎的人說我運氣用完 what' the fuck 你中獎還要中傷我 只有安慰獎1000元的人 滴血
Thumbnail
Maples of entropy are releasing and flying, every day recycling with relevance endlessly, thanks to those who ever help me.
Thumbnail
Example code: $data['items']: $items: 本筆記參考: 1. https://docfunc.com/posts/36/foreacharraymap-%E8%88%87-laravel-collection-post