Java集合框架的概念以及常用介面的介紹
導讀:為了解決陣列長度固定不變無法適應變化情況,無法獲取物件真實的儲存個數,查詢效率低下等問題,Java集合框架為我們開發了一套效能優良,使用方便的介面和類,用來儲存資料和進行各種資料操作,位於java.util包中。集合框架包含三大塊內容:對外的介面,介面的實現,和對集合運算的演算法。
Java集合框架簡圖
特徵:
*List,Set,Map將持有物件一律視為Object型別。
*Collection、List、Set、Map都是介面,不能例項化,例如:List li=null ,會報空指標異常。
繼承自它們的 ArrayList, Vector, HashTable, HashMap是具象class,這些才可被例項化。
List介面
List介面通常表示一個列表(陣列、佇列、連結串列、棧等),其中的元素有序、可以重複,常用實現類為ArrayList和LinkedList,另外還有不常用的Vector。另外,LinkedList還實現了Queue介面,因此也可以作為佇列使用。List和陣列類似,List可以動態增長,相當於動態陣列,查詢元素效率高,插入刪除元素效率低,因為會引起其他元素位置改變。
Set介面
Set介面通常表示一個集合,其中的元素是有序的集合,不允許重複。Set以雜湊表的形式存放元素,檢索元素效率低下,刪除和插入效率高,插入和刪除不會引起元素位置改變。
Map介面
Map是一個對映介面,其中的每個元素都是一個key-value鍵值對。Map主要用於儲存健值對,不要求有序,它是根據鍵得到值,因此不允許鍵重複,但允許值重複。
Iterator迭代器
Iterator是遍歷集合的迭代器(不能遍歷Map,只用來遍歷Collection),Collection的實現類都實現了iterator()函式,它返回一個Iterator物件,用來遍歷集合,ListIterator則專門用來遍歷List。
工具類
Arrays和Collections是用來運算元組、集合的兩個工具類,例如在ArrayList和Vector中大量呼叫了Arrays.Copyof()方法,而Collections中有很多靜態方法可以返回各集合類的synchronized版本,即執行緒安全的版本,當然了,如果要用執行緒安全的結合類,首選Concurrent併發包下的對應的集合類。
泛型集合
例: Map<String, String> dog=new HashMap<String, String>();
List<Dog> dogs=new ArrayList<Dog>();
泛型集合用<>標記元素型別,在建立集合物件時強制指定了集合中元素的型別,在從集合中取出元素時無需進行型別強制轉換,避免了ClassCastException異常,即型別轉換異常。
相關文章
- java常用的框架介紹Java框架
- Java常用的5大框架介紹!Java框架
- IOC和DI的概念,以及Spring框架的介紹Spring框架
- java集合類介紹Java
- Java中幾種常用的RPC框架介紹JavaRPC框架
- Java集合框架系列教程一:集合框架簡介Java框架
- golang實現常用集合原理介紹Golang
- JAVA SSH 框架介紹Java框架
- Hive的基本介紹以及常用函式Hive函式
- 軟體開發常用結構以及SSM框架的簡單介紹SSM框架
- JAVA SSH 框架介紹(轉)Java框架
- 關於keras框架的介紹以及操作使用Keras框架
- Castle Windsor常用介紹以及其在ABP專案的應用介紹AST
- Java之Spring Cloud概念介紹JavaSpringCloud
- Spark概念介紹Spark
- JavaEE概念介紹Java
- 簡單介紹一下Java常用的五大框架!Java框架
- JAVA集合框架中的常用集合及其特點、適用場景、實現原理簡介Java框架
- Java常用工具介紹Java
- 支付對接常用的加密方式介紹以及java程式碼實現加密Java
- 大資料以及Hadoop相關概念介紹大資料Hadoop
- JavaScript元素集合介紹JavaScript
- Oracle RAC 概念介紹Oracle
- mysql中SQL的概念介紹MySql
- Redux的簡單概念介紹Redux
- TPHP框架介紹PHP框架
- .NET框架介紹框架
- KanaPHP框架介紹PHP框架
- TypeScript Mixins 概念介紹TypeScript
- Vue 關鍵概念介紹Vue
- javascript閉包概念介紹JavaScript
- RecyclerView 介紹 02 – 重要概念View
- spring框架的介紹Spring框架
- Java 微服務框架 Redkale 入門介紹Java微服務框架
- Java介紹Java
- JavaScript常用物件介紹JavaScript物件
- Oracle 常用HINT介紹Oracle
- java的基本函式(介紹)--過載概念、基本應用Java函式