黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學(xué)習(xí)攻略 Java學(xué)習(xí) Java集合框架視頻教程,深入了解集合框架

Java集合框架視頻教程,深入了解集合框架

更新時間:2020-01-19 10:52:56 來源:動力節(jié)點 瀏覽2378次


Java集合框架視頻教程,深入了解集合框架


  Java 集合框架


  早在Java 2中之前,Java就提供了特設(shè)類。比如:Dictionary, Vector, Stack, 和Properties這些類用來存儲和操作對象組。


  雖然這些類都非常有用,但是它們?nèi)鄙僖粋€核心的,統(tǒng)一的主題。由于這個原因,使用Vector類的方式和使用Properties類的方式有著很大不同。


  集合框架被設(shè)計成要滿足以下幾個目標(biāo):


  該框架必須是高性能的?;炯?動態(tài)數(shù)組,鏈表,樹,哈希表)的實現(xiàn)也必須是高效的。


  該框架允許不同類型的集合,以類似的方式工作,具有高度的互操作性。


  對一個集合的擴(kuò)展和適應(yīng)必須是簡單的。


  為此,整個集合框架就圍繞一組標(biāo)準(zhǔn)接口而設(shè)計。你可以直接使用這些接口的標(biāo)準(zhǔn)實現(xiàn),諸如: LinkedList, HashSet, 和 TreeSet等,除此之外你也可以通過這些接口實現(xiàn)自己的集合。


  集合框架是一個用來代表和操縱集合的統(tǒng)一架構(gòu)。所有的集合框架都包含如下內(nèi)容:


  接口:是代表集合的抽象數(shù)據(jù)類型。接口允許集合獨立操縱其代表的細(xì)節(jié)。在面向?qū)ο蟮恼Z言,接口通常形成一個層次。


  實現(xiàn)(類):是集合接口的具體實現(xiàn)。從本質(zhì)上講,它們是可重復(fù)使用的數(shù)據(jù)結(jié)構(gòu)。


  算法:是實現(xiàn)集合接口的對象里的方法執(zhí)行的一些有用的計算,例如:搜索和排序。這些算法被稱為多態(tài),那是因為相同的方法可以在相似的接口上有著不同的實現(xiàn)。


  除了集合,該框架也定義了幾個Map接口和類。Map里存儲的是鍵/值對。盡管Map不是collections,但是它們完全整合在集合中。


  集合框架體系如圖所示:


Java集合框架視頻教程,深入了解集合框架


  Java集合框架提供了一套性能優(yōu)良,使用方便的接口和類,java集合框架位于java.util包中,所以當(dāng)使用集合框架的時候需要進(jìn)行導(dǎo)包。下面介紹幾個接口中常用的接口以及實現(xiàn)類。


  List接口的常用實現(xiàn)類


  一個List是一個元素有序的、可以重復(fù)、可以為null的集合(有時候我們也叫它“序列”)。


  ArrayList


  最常用的List接口實現(xiàn)類,底層使用可變長度的動態(tài)數(shù)組實現(xiàn)。ArrayList有一個初始容量(capacity=10),當(dāng)元素數(shù)量大于初始容量時進(jìn)行擴(kuò)容,新的數(shù)組長度=舊數(shù)組長度+舊數(shù)組長度/2。


  因為每個元素都有固定的位置索引,所以根據(jù)索引查詢元素的速度非???。如果在中間插入元素時,由于后面的元素全部要后移一位,所以性能會比較差。


  由于沒有做并發(fā)訪問控制,所以它是一個非線程安全的集合。允許重復(fù)元素或null元素。


  LinkedList


  List接口的雙向鏈接的實現(xiàn)類,允許NULL元素。它表現(xiàn)上是一個有序的集合,但內(nèi)存中其實是無序保存。


  由于原因,所以它插入的速度會很快,但是查詢一個元素的速度較ArrayList速度慢很多。是一個非線程安全的集合。


  Vector


  Vector底層使用動態(tài)數(shù)組實現(xiàn),默認(rèn)初始容量為10,可以通過構(gòu)造方法指定初始容量,同時可以指定擴(kuò)容時的增量。


  擴(kuò)容規(guī)則是指新容量=舊容量+擴(kuò)容增量,若未指定擴(kuò)容增量則新容量=2*舊容量。它的關(guān)鍵方法都加了synchronized,所以是一個線程安全的集合。


  Set集合接口


  如果是實現(xiàn)了Set接口的集合類,具備的特點:無序,不可重復(fù)


  添加元素的順序與元素出來的順序是不一致的。


  注重獨一無二的性質(zhì),該體系集合可以知道某物是否已近存在于集合中,不會存儲重復(fù)的元素。


  hashSet


  HashSet底層是使用了哈希表來支持的,特點:存取速度快。


  往Hashset添加元素的時候,HashSet會先調(diào)用元素的hashCode方法得到元素的哈希值,


  然后通過元素的哈希值經(jīng)過移位等運算,就可以算出該元素在哈希表中的存儲位置。


  LinkedHashSet


  LinkedHashSet底層使用LinkedHashMap來保存所有元素,它繼承與HashSet,其所有的方法操作上又與HashSet相同,因此LinkedHashSet的實現(xiàn)上非常簡單,只提供了四個構(gòu)造方法。


  并通過傳遞一個標(biāo)識參數(shù),調(diào)用父類的構(gòu)造器,底層構(gòu)造一個LinkedHashMap來實現(xiàn),在相關(guān)操作上與父類HashSet的操作相同,直接調(diào)用父類HashSet的方法即可。


  treeSet


  treeSet底層是以紅-黑樹的數(shù)據(jù)結(jié)構(gòu)實現(xiàn)的,默認(rèn)對元素進(jìn)行自然排序(String)。


  如果在比較的時候兩個對象返回值為0,那么元素重復(fù)。


  Map接口的常用實現(xiàn)類


  Map提供了一個更通用的元素存儲方法。Map集合類用于存儲元素對(稱作“鍵”和“值”),其中每個鍵映射到一個值。


  從概念上而言,您可以將List看作是具有數(shù)值鍵的Map。而實際上,除了List和Map都在定義java.util中外,兩者并沒有直接的聯(lián)系。


  本文將著重介紹核心Java發(fā)行套件中附帶的Map,同時還將介紹如何采用或?qū)崿F(xiàn)更適用于您應(yīng)用程序特定數(shù)據(jù)的專用Map。


  HashMap


  往HashMap添加元素的時候,首先會調(diào)用鍵的hashCode方法得到元素的哈希碼值,然后經(jīng)過運算就可以算出該元素在哈希表中的存儲位置。


  并允許使用null值和null鍵。此類不保證映射的順序,特別是它不保證該順序恒久不變。


  HashTable


  HashTable是同步的(synchronized函數(shù)),而HashMap不同步,所以HashTable要慢一些HashTable不接受null鍵和值。


  而HashMap接受一個null鍵和無數(shù)個null值除了keySet(),entrySet(),values()這些HashMap支持的迭代之外,HashTable還支持基于Enumeration的keys(),elements(),但是在現(xiàn)在它們的實現(xiàn)都是基于一個實現(xiàn)了Enumeration和Iterator接口的類。


  TreeMap


  TreeMap也是基于紅黑樹(二叉樹)數(shù)據(jù)結(jié)構(gòu)實現(xiàn)的,特點:會對元素的鍵進(jìn)行排序存儲。


  注意:Set的元素不可重復(fù),如果set元素重復(fù)將添加不成功。


  Map的鍵不可重復(fù),如果鍵重復(fù)將直接覆蓋。


  框架相關(guān)視頻教程


  struts入門教程:http://m.ilovecolors.com.cn/v36/


  hibernate入門教程:http://m.ilovecolors.com.cn/v39/


  Java spring框架教程:http://m.ilovecolors.com.cn/v38/


  全套免費ssm整合視頻教程:http://m.ilovecolors.com.cn/v92/


Java集合框架視頻教程,深入了解集合框架


      以上就是動力節(jié)點Java培訓(xùn)機構(gòu)小編介紹的“Java集合框架視頻教程,深入了解集合框架”的內(nèi)容,希望對大家有幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。


  相關(guān)內(nèi)容


  深入淺出的Java學(xué)習(xí)路徑,Java練手項目學(xué)習(xí)


  新手Java的三大框架ssh學(xué)習(xí)


  JavaSSH框架教學(xué)視頻


提交申請后,顧問老師會電話與您溝通安排學(xué)習(xí)

免費課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 天天操天天射天天色 | 亚洲 欧美 激情 另类 自拍 | 成人国产精品999视频 | 又黄又爽又色又刺激的视频 | 香港国产特级一级毛片 | 色网在线免费观看 | 免费一级欧美片片线观看 | 亚洲成精品动漫久久精久 | 羞羞网站在线免费观看 | 国产在线拍揄自揄视精品不卡 | 黄色网址免费看 | 欧美另类亚洲 | 国产一区二区三区高清视频 | 手机看高清特黄a大片 | 中文字幕影院 | 久久精品国产欧美成人 | 精品亚洲欧美中文字幕在线看 | 精品在线播放 | 一级毛片在线看在线播放 | 污视频网站免费 | 丝袜美腿美女被狂躁动态图片 | 一区二区三区视频免费 | 无码中文字幕日韩专区 | 欧美伊人久久综合网 | 在线精品小视频 | 午夜免费在线观看 | 亚洲色图26p | 一级香蕉视频在线观看 | 国产黄色片在线观看 | 亚洲黄色在线视频 | 欧美性精品hd在线观看 | 曰皮全部过程视频免费国产 | 特级淫片波多野结衣 | 乱色伦短篇小说 | 欧美色图 亚洲 | 男人把女人下部桶爽的视频 | 999久久久免费精品国产牛牛 | 成年人免费毛片 | 男人把女人狂躁的免费视频 | 久久青草免费91观看 | 天天干天天玩天天操 |