中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

Java集合干貨系列-集合總體大綱-創(chuàng)新互聯(lián)

前言

Java集合是java提供的工具包,包含了常用的數(shù)據(jù)結(jié)構(gòu):集合、鏈表、隊列、棧、數(shù)組、映射等。Java集合工具包位置是java.util.*

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:主機域名、網(wǎng)頁空間、營銷軟件、網(wǎng)站建設(shè)、達(dá)日網(wǎng)站維護(hù)、網(wǎng)站推廣。

Java集合主要可以劃分為4個部分:List列表、Set集合、Map映射、工具類(Iterator迭代器、Enumeration枚舉類、Arrays和Collections)。

Java集合工具包框架圖(如下):

Java集合干貨系列-集合總體大綱

正文

看上面的框架圖,先抓住它的主干,即Collection和Map。

Collection接口、子接口以及實現(xiàn)類

Collection接口

  • 是List、Set和Queue接口的父接口

  • 定義了可用于操作List、Set和Queue的方法-增刪改查

Collection接口API中定義的方法如下:

Java集合干貨系列-集合總體大綱

List接口

  • List是元素有序并且可以重復(fù)的集合,被稱為序列

  • List可以精確的控制每個元素的插入位置,或刪除某個位置元素

  • List接口的常用子類:

  • ArrayList

  • LinkedList

  • Vector

  • Stack

下圖是List的JDK源碼UML圖。

Java集合干貨系列-集合總體大綱

Set接口

  • Set接口中不能加入重復(fù)元素,無序

  • Set接口常用子類:

  • 散列存放:HashSet

  • 有序存放:TreeSet

下圖是Set的JDK源碼UML圖。

Java集合干貨系列-集合總體大綱

Map和HashMap

Map接口

  • Map提供了一種映射關(guān)系,其中的元素是以鍵值對(key-value)的形式存儲的,能夠?qū)崿F(xiàn)根據(jù)key快速查找value

  • Map中的鍵值對以Entry類型的對象實例形式存在

  • 鍵(key值)不可重復(fù),value值可以

  • 每個建最多只能映射到一個值

  • Map接口提供了分別返回key值集合、value值集合以及Entry(鍵值對)集合的方法

  • Map支持泛型,形式如:Map

HashMap類

  • HashMap是Map的一個重要實現(xiàn)類,也是最常用,基于哈希表實現(xiàn)

  • HashMap中的Entry對象是無序排列的

  • Key值和Value值都可以為null,但是一個HashMap只能有一個key值為null的映射(key值不可重復(fù))

下圖是Map的JDK源碼UML圖

Java集合干貨系列-集合總體大綱

Comparable和Comparator

Comparable接口——可比較的

  • 實現(xiàn)該接口表示:這個類的實例可以比較大小,可以進(jìn)行自然排序

  • 定義了默認(rèn)的比較規(guī)則

  • 其實現(xiàn)類需要實現(xiàn)compareTo()方法

  • compareTo()方法返回正數(shù)表示大,負(fù)數(shù)表示小0表示相等

Comparator 接口——比較工具接口

  • 用于定義臨時比較規(guī)則,而不是默認(rèn)比較規(guī)則

  • 其實現(xiàn)類需要實現(xiàn)compare()方法

  • Comparable和Comparator都是Java集合框架的成員

Iterator接口

  1. 集合輸出的標(biāo)準(zhǔn)操作

  2. 標(biāo)準(zhǔn)做法,使用Iterator接口

  3. 操作原理:

  4. Iterator是專門的迭代輸出接口,迭代輸出就是將元素一個個進(jìn)行判斷,判斷其是否有內(nèi)容,如果有內(nèi)容則把內(nèi)容取出。

總結(jié)

集合的作用

  • 在類的內(nèi)部,對數(shù)據(jù)進(jìn)行組織;

  • 簡單而快速的搜索大數(shù)量的條目;

  • 有的集合接口,提供了一系列排列有序的元素,并且可以在序列中間快速的插入或者刪除有關(guān)元素;

  • 有的集合接口,提供了映射關(guān)系,可以通過關(guān)鍵字(key)去快速查找對應(yīng)的唯一對象,而這個關(guān)鍵字額可以是任意類型。

與數(shù)組的對比—————為何選擇集合而不是數(shù)組

  • 數(shù)組的長度固定,集合長度可變

  • 數(shù)組只能通過下標(biāo)訪問元素,類型固定,而有的集合可以通過任意類型查找所映射的具體對象。

整理的集合框架思維導(dǎo)圖

同時給大家推薦一個架構(gòu)交流學(xué)習(xí)群:371067604,里面會分享一些資深架構(gòu)師錄制的視頻錄像:有Spring,MyBatis,Netty源碼分析

,高并發(fā)、高性能、分布式、微服務(wù)架構(gòu)的原理,JVM性能優(yōu)化這些成為架構(gòu)師必備的知識體系。還能領(lǐng)取免費的學(xué)習(xí)資源,相信對于已經(jīng)工作

和遇到技術(shù)瓶頸的碼友,在這個群里會有你需要的內(nèi)容。

點擊鏈接加入群聊【享學(xué)-Java技術(shù)交流群】:https://jq.qq.com/?_wv=1027&k=5fX2KCQ

Java集合干貨系列-集合總體大綱

網(wǎng)頁標(biāo)題:Java集合干貨系列-集合總體大綱-創(chuàng)新互聯(lián)
瀏覽路徑:http://www.rwnh.cn/article4/ddspie.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、動態(tài)網(wǎng)站、移動網(wǎng)站建設(shè)、面包屑導(dǎo)航、做網(wǎng)站網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作
铜山县| 金平| 达日县| 德钦县| 武山县| 广安市| 淮滨县| 宣武区| 南开区| 龙川县| 平阴县| 嘉鱼县| 隆安县| 雅安市| 平塘县| 华宁县| 成都市| 广元市| 文化| 扶沟县| 龙江县| 瑞安市| 宜兰县| 沁源县| 武冈市| 奉化市| 慈溪市| 共和县| 万载县| 昌黎县| 措美县| 深水埗区| 永济市| 张家界市| 高密市| 鄂托克旗| 随州市| 阜宁县| 米易县| 宜宾县| 峨眉山市|