Map

更新 發佈閱讀 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 的功能,但具有弱鍵
    • 非線程安全


留言
avatar-img
Genos's Coding Diary的沙龍
6會員
19內容數
我的Java學習日記
2023/10/03
為何要重寫equals方法? 為何要重寫hashCode方法?
2023/10/03
為何要重寫equals方法? 為何要重寫hashCode方法?
2023/09/27
兩種方式進行物件比較,使用Comparator或使用Comparable
2023/09/27
兩種方式進行物件比較,使用Comparator或使用Comparable
2023/09/27
併發,多個事情在同一時間段內同時發生 並行,多個事情在同一個時間點上同時發生
2023/09/27
併發,多個事情在同一時間段內同時發生 並行,多個事情在同一個時間點上同時發生
看更多
你可能也想看
Thumbnail
在 vocus 與你一起探索內容、發掘靈感的路上,我們又將啟動新的冒險——vocus App 正式推出! 現在起,你可以在 iOS App Store 下載全新上架的 vocus App。 無論是在通勤路上、日常空檔,或一天結束後的放鬆時刻,都能自在沈浸在內容宇宙中。
Thumbnail
在 vocus 與你一起探索內容、發掘靈感的路上,我們又將啟動新的冒險——vocus App 正式推出! 現在起,你可以在 iOS App Store 下載全新上架的 vocus App。 無論是在通勤路上、日常空檔,或一天結束後的放鬆時刻,都能自在沈浸在內容宇宙中。
Thumbnail
vocus 慶祝推出 App,舉辦 2026 全站慶。推出精選內容與數位商品折扣,訂單免費與紅包抽獎、新註冊會員專屬活動、Boba Boost 贊助抽紅包,以及全站徵文,並邀請你一起來回顧過去的一年, vocus 與創作者共同留下了哪些精彩創作。
Thumbnail
vocus 慶祝推出 App,舉辦 2026 全站慶。推出精選內容與數位商品折扣,訂單免費與紅包抽獎、新註冊會員專屬活動、Boba Boost 贊助抽紅包,以及全站徵文,並邀請你一起來回顧過去的一年, vocus 與創作者共同留下了哪些精彩創作。
Thumbnail
Map 集合特性: 採 key、value 方式存放,key 唯一不能重覆。
Thumbnail
Map 集合特性: 採 key、value 方式存放,key 唯一不能重覆。
Thumbnail
Dictionary 字典 和 Set 集合 字典(Dictionary)是 Python 中一個常用的資料結構,用於儲存一組鍵值對(Key-Value pairs)。集合(Set)是 Python 中的一種無序、可變的資料結構,用於存儲多個元素,且集合中的元素是唯一的(不重複)
Thumbnail
Dictionary 字典 和 Set 集合 字典(Dictionary)是 Python 中一個常用的資料結構,用於儲存一組鍵值對(Key-Value pairs)。集合(Set)是 Python 中的一種無序、可變的資料結構,用於存儲多個元素,且集合中的元素是唯一的(不重複)
Thumbnail
題目會給定一組已經規定好的介面interface,要求我們實作HashSet這種資料結構。也就是一般數學和程式語言中所說的"集合"。
Thumbnail
題目會給定一組已經規定好的介面interface,要求我們實作HashSet這種資料結構。也就是一般數學和程式語言中所說的"集合"。
Thumbnail
👨‍💻簡介 在 Go 語言中,有著一個強大又便捷的工具,可以讓你以鍵-值(Key-Value)的形式儲存和查詢資料,它就是「Map」。Map 在 Go 語言中扮演了重要的角色,簡化了許多資料處理的任務,現在讓我們一起來深入了解這個有趣的資料型別。 Map的基本概念 Map 是 Go 語
Thumbnail
👨‍💻簡介 在 Go 語言中,有著一個強大又便捷的工具,可以讓你以鍵-值(Key-Value)的形式儲存和查詢資料,它就是「Map」。Map 在 Go 語言中扮演了重要的角色,簡化了許多資料處理的任務,現在讓我們一起來深入了解這個有趣的資料型別。 Map的基本概念 Map 是 Go 語
Thumbnail
Mapping(映射)就像是字典表一樣,鍵入「什麼樣的標題」對應到「什麼樣的內容」,而標題就是從內容提煉出來的一種簡短快速識別的標的,透過這種方式,我們未來找尋內文時,只要先透過標題來查找,絕對會比直接找內文快上好幾倍,因此Mapping常常應用在查找事物上,它有點像一般程式語言的HashTable
Thumbnail
Mapping(映射)就像是字典表一樣,鍵入「什麼樣的標題」對應到「什麼樣的內容」,而標題就是從內容提煉出來的一種簡短快速識別的標的,透過這種方式,我們未來找尋內文時,只要先透過標題來查找,絕對會比直接找內文快上好幾倍,因此Mapping常常應用在查找事物上,它有點像一般程式語言的HashTable
Thumbnail
哈希圖共識在區塊鏈中的作用是確定分佈式賬本中的交易順序和確認交易的有效性[1]。​區塊鏈是一種去中心化的分佈式賬本,​需要一種共識機制來確定交易的有效性和順序,​以維護系統的運作順序和公平性[1]。​哈希圖共識是一種新興的共識機制,​可以實現高效、​安全、​公平和快速的交易[2]。​區塊鏈技術可以幫
Thumbnail
哈希圖共識在區塊鏈中的作用是確定分佈式賬本中的交易順序和確認交易的有效性[1]。​區塊鏈是一種去中心化的分佈式賬本,​需要一種共識機制來確定交易的有效性和順序,​以維護系統的運作順序和公平性[1]。​哈希圖共識是一種新興的共識機制,​可以實現高效、​安全、​公平和快速的交易[2]。​區塊鏈技術可以幫
Thumbnail
哈希函數 ( Hash Function ) 還能在有限時間和資源內計算出哈希值 ( hash values ),這種能快速驗證且單向加密的特性,能防止數據在傳遞過程被竄改,因此成為區塊鏈安全性中非常重要的技術。
Thumbnail
哈希函數 ( Hash Function ) 還能在有限時間和資源內計算出哈希值 ( hash values ),這種能快速驗證且單向加密的特性,能防止數據在傳遞過程被竄改,因此成為區塊鏈安全性中非常重要的技術。
Thumbnail
Array 在記憶體中連續分配,而且元素類型是一樣的,長度不變 優點:讀取快,可以使用座標訪問 缺點:新增、刪除慢 記憶體: 📷 範例程式碼: ArrayList 不定長度,在記憶體中連續分配的,元素沒有類型限制,任何元素都是當成object處理,如果是值類型,會有裝箱的操作 優點:讀取快 缺點:
Thumbnail
Array 在記憶體中連續分配,而且元素類型是一樣的,長度不變 優點:讀取快,可以使用座標訪問 缺點:新增、刪除慢 記憶體: 📷 範例程式碼: ArrayList 不定長度,在記憶體中連續分配的,元素沒有類型限制,任何元素都是當成object處理,如果是值類型,會有裝箱的操作 優點:讀取快 缺點:
Thumbnail
我們在看眾多區塊鏈文章的時候,是不是常常看到「雜湊函數」和「雜湊值」或「哈希函數」和「哈希值」,其實他們在講同個東西,所以我習慣用英文來說,「Hash Function」和 「Hash Value」。 魔法盒 & 專屬標籤 Hash Function & Hash Value
Thumbnail
我們在看眾多區塊鏈文章的時候,是不是常常看到「雜湊函數」和「雜湊值」或「哈希函數」和「哈希值」,其實他們在講同個東西,所以我習慣用英文來說,「Hash Function」和 「Hash Value」。 魔法盒 & 專屬標籤 Hash Function & Hash Value
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News