Java集合架構 泛型__Java

來源:互聯網
上載者:User
java集合架構中分為兩大類:裝載資料的集合類和操作資料的工具類。

java集合類是基於Collection介面,再根據不同需求分類為Set、List和Map三大介面。

java集合就像一種容器,可以通過相應的方法將多個對象的引用放在容器中。容器中的元素(對象的引用)類型都為Object類型,所以可以通過向上轉型存放任意類型的對象引用,但從容器中取出元素時必須向下轉型(強制轉型)為原來的類型。
值得注意的是集合類容器中的元素不存放基礎資料型別 (Elementary Data Type),可存放封裝類類型。


裝載資料的集合類:集合類通過Collection介面定義了集合類共有的一些基本方法,這些方法分為基本操作(添加、刪除、修改和尋找容器元素)、大量操作(大量新增、刪除容器元素)和數組操作(集合與數組之間相互轉換)。


Set、List和Map介面
1、List介面:它繼承於Collection介面,是一個允許存在重複元素的有序集合。List介面的實作類別(具體類)常用的有ArrayList(順序表集合)和LinkedList(鏈表集合)。
1>ArrayList(順序表集合):ArrayList類擴充AbstractList並實現List介面。ArrayList類提供了一個隨需要而增長的動態數組。在java中,標準數組是固定長度的,在數組建立之後,它們不能被加長或縮短,這也就意味著我們必須事Crowdsourced Security Testing道數組可以容納多少元素。但是,直到運行時才能知道需要多大的數組。ArrayList類就是為瞭解決這個問題。
特點:對於使用索引查詢元素效率較高,它可以使用索引快速定位元素位置,但刪除或插入元素效率較低,因為使用了數組,需要移動後面的元素以調整索引的順序。它的使用最廣泛,可在集合元素增加或刪除操作不頻繁時使用,最適合做查詢操作。

java泛型

由於集合中儲存的元素都是Object類型,當一個元素從集合中取出來後都是Object類型的對象引用,所以我們必須對其進行向下強制轉型,為瞭解決這種麻煩,JDK1.5中支援一項新特性--java泛型。


所謂泛型是指在定義(類的定義、方法的定義、形式參數的定義、成員變數的定義等)的時候,指定它為通用類型,也就是資料類型可以是任意的類型,具體調用的時候要將通用類型轉換成指定的類型使用。
泛型是對java語言的類型系統的一種擴充,以支援建立可以按類型進行參數化類別可以把型別參數看作是使用參數化型別時指定的類型的一個預留位置,就像方法的形式參數是運行時傳遞的值的預留位置一樣。

泛型的優點:java語言引入泛型的好處是安全簡單。泛型的好處是在編譯的時候檢查型別安全,並且所有的向下強制轉型都是自動和隱式的,提高了代碼的重用率。

注意:在靜態方法、靜態初始化塊、靜態成員變數裡面不允許使用泛型。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.