1. 程式人生 > >Java 集合類框架

Java 集合類框架

    本文主要總結Java集合類框架下的介面與類
    
        助記:(Sorted ——天然順序)
    1.List
    可自定義排序,可視作陣列,索引從0開始
    a.ArrrayList 依賴陣列實現,對元素隨機訪問的效能很好,若進行大量的插入,刪除操作,效能很差
    b.    Vector 與ArrayList基本相同,但功能方法是同步的,同時只能有一個執行緒訪問。
            c.    LinkedList 內部依靠雙鏈表實現,有很好的刪除,插入效能,但隨機訪問元素的效能相對較差。
        
        2.Set
            Set中equals方法比較任何兩個物件都返回False,即Set不允許有重複的元素。
            a.    HashSet    元素儲存不按照任何順序,按雜湊策略儲存,可新增NULL一次,每次新增都呼叫HashCode方法
            b.    LinkedHashSet    自定義排序,採用雙鏈表實現,預設按插入順序排序,其餘與HashSet一致
            c.    SortedSet    按天然順序排序與遍歷。
            d.    TreeSet    按天然順序排序,不使用雜湊策略,呼叫CompareTo方法,按二叉樹(紅-黑二叉樹)結構儲存,插入新的元素時不必與所有原有元素比較     
      

        1.    HashMap 既不是Ordered也不是Sorted,按雜湊策略儲存
        2.    Hashtable 與HashMap基本相同,但元素操作時同步的,損害效能,不允許NULL鍵的存在。
        3.    LinkedHashMap 通過雙鏈表實現的Map,Ordered型別,鍵按照插入集合的順序儲存,基本功能和HashMap相同,插入/刪除效率比HashMap差,遍歷效率比HashMap高
        4.    SortedMap    Sorted型別,需實現Comparable介面
        5.    TreeMap    遍歷時按天然順序

閱讀(231) | 評論(0) | 轉發(1) | 給主人留下些什麼吧!~~ 評論熱議

相關推薦

JAVA集合框架學習彙總

學習連結: 集合類框架教程:http://www.runoob.com/java/java-collections.html 集合類框架面試題:https://www.jianshu.com/p/8b0a09f70b9c 集合類框架的優點: 通過使用集合框架的核心類可以減少

安全程式設計(九)- Java集合框架的最佳實踐

1.引言         根據應用的需要正確選定集合型別對效能非常重要! 2.例項         2.1假如集合元素的大小是固定的,而且能事先知道,我們就應該用Array而不是用ArrayList。文章

Java集合框架的基本介面有哪些?

Java 集合類提供了一套設計良好的支援對一組物件進行操作的介面和類。Java集合類裡面最基本的介面有: Collection:代表一組物件,每一個物件都是它的子元素。 Set:不包含重複元素的 Collection。 List:有順序的 collection,

Java集合框架的基本介面有哪些

一.為什麼要使用介面 假如有一個需求:要求實現防盜門的功能。門有”開”和”關”的功能,鎖有”上鎖”和”開鎖”的功能。 分析:首先防盜門是一個門,門有開門和關門的功能,還有一把鎖,鎖有開鎖和上鎖,按照面向物件的程式設計的思想,我們會將門和鎖都作為一個類而單獨存

Java 集合框架

    本文主要總結Java集合類框架下的介面與類              助記:(Sorted ——天然順序)    1.List    可自定義排序,可視作陣列,索引從0開始    a.ArrrayList 依賴陣列實現,對元素隨機訪問的效能很好,若進行大量的插入,刪除

夯實Java基礎系列19:一文搞懂Java集合框架,以及常見面試題

本系列文章將整理到我在GitHub上的《Java面試指南》倉庫,更多精彩內容請到我的倉庫裡檢視 https://github.com/h2pl/Java-Tutorial 喜歡的話麻煩點下Star哈 文章首發於我的個人部落格: www.how2playlife.com 本文參考 https://ww

Java中最常用的集合框架之 HashMap

tor nbsp 兩種 lca 元素 adf boolean 線程 進行 一、HashMap的概述 HashMap可以說是Java中最常用的集合類框架之一,是Java語言中非常典型的數據結構。 HashMap是基於哈希表的Map接口實現的,此實現

Java語言學習(八):集合框架

    Java中提供了各種資料集合類,這些類主要用於儲存複雜結構的資料。下面將介紹常用的幾種集合類的用法。     ArrayList集合可以看做一個動態的陣列,比普通陣列更加靈活,更適合儲存未知數量的資料。它突破了普通陣列固定長度的限制,可以隨時向陣列

Java常用集合框架的基本介面

在Java中有一套設計優良的介面和類組成了Java集合框架,使程式設計師操作成批的資料或物件元素極為方便。所有的Java集合都在java.util包中。 (1)、List介面及其實現類 List介面繼承於Collection介面。 List介面及其實現類是容量可變

Java集合 List Set Map

set map 集合 java集合類 索引 擁有 對象 ava 重復 排序 1.List(有序、可重復) (1)List裏存放的對象是有序的,而且可以重復。 (2)List關註的是索引,擁有一系列索引相關的方法。 (3)往其中插入或刪除數據時,後面的數據會移動。 2.S

JAVA集合--(一閃而過)

最好 情況 logs tab 發生 映射關系 next abstract 自己的 一、集合與數組   數組(可以存儲基本數據類型)是用來存現對象的一種容器,但是數組的長度固定,不適合在對象數量未知的情況下使用。   集合(只能存儲對象,對象類型可以不一樣)的長度可變,可在多

java集合

集合 結構 關鍵字 特定 ref 向量 實現 數據結構 散列 集合類存放於java.util包中。 集合類存放的都是對象的引用,而非對象本身,出於表達上的便利,我們稱集合中的對象就是指集合中對象的引用(reference)。 集合類型主要有3種:set(集)、list(列表

java集合整理

pre 大於等於 lis heads 視圖 sys logs println class LinkedList 優點:插入刪除迅速 缺點:不適合隨機訪問 List<String> staff = new LinkedList<String>()

Java集合總結

tree dex trac emp oat err 條件 最終 一個地方 集合類和接口之間的關系圖,能夠比較清楚的展示各個類和接口之間的關系(其中:點框為接口(...) 短橫線框為抽象類(---) 實線為類) 上圖可以看到:集合可以分成兩部分來學習。一個是以Colle

Java集合操作優化經驗總結

設置 mar ise long 初始化 實際類型 線性表 core 不一定 在實際的項目開發中會有非常多的對象,怎樣高效、方便地管理對象,成為影響程序性能與可維護性的重要環節。Java 提供了集合框架來解決此類問題。線性表、鏈表、哈希表等是經常使用的數據結構,在

Java集合匯總記錄--guava篇

hba nth uav ted enum ranges rac 內部 組成 BiMap HashBiMap<K,V> 實現了兩份哈希表數據結構(本類獨立實現)。分別負責兩個方向的映射。 EnumBiMap<K,V> 兩個EnumMap對象分別

Java集合解析

先來 重新 興趣 exp weak hashtable 過程 子類 put Java中的集合類包含的內容很多而且很重要,很多數據的存儲和處理(排序,去重,篩選等)都需要通過集合類來完成。 首先java中集合類主要有兩大分支: (1)Collection (2)Map

Java 集合

示例 data 訪問速度 並發 nbsp remove 測試 自定義 arr 一、集合與數組 數組(可以存儲基本數據類型)是用來存現對象的一種容器,但是數組的長度固定,不適合在對象數量未知的情況下使用。 集合(只能存儲對象,對象類型可以不一樣)的長度可變,可在多數情況下使用

關於Java集合庫中的幾種常用隊列

rac syn text 刪除 style asdasd 新元素 其他 arraylist Java中幾種常用的隊列 阻塞隊列與普通隊列的區別在於,當隊列是空的時,從隊列中獲取元素的操作將會被阻塞,或者當隊列是滿時,往隊列裏添加元素的操作會被阻塞。試圖從空的阻塞隊列中獲取元

Java 集合 (Collection)

序列 給定 sig 引用 線性 com ole dstat 數組實現 為什麽要使用集合類?當你事先不知道要存放數據的個數,或者你需要一種比數組下標存取機制更靈活的方法時,你就需要用到集合類。集合類存放於java.util包中java.util中共有13個類可用於管理集合對象