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

專注Java教育14年 全國(guó)咨詢/投訴熱線:400-8080-105
動(dòng)力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學(xué)習(xí)攻略 Java學(xué)習(xí) Java開發(fā):Java基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)學(xué)習(xí)

Java開發(fā):Java基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)學(xué)習(xí)

更新時(shí)間:2019-12-03 11:12:05 來源:動(dòng)力節(jié)點(diǎn) 瀏覽2660次

 

  數(shù)據(jù)結(jié)構(gòu)是計(jì)算機(jī)存儲(chǔ),組織數(shù)據(jù)的方式。數(shù)據(jù)結(jié)構(gòu)是指相互之間存在一種或多種特定關(guān)系的數(shù)據(jù)元素的集合。通常情況下,精心選擇的數(shù)據(jù)結(jié)構(gòu)可以帶來更高的運(yùn)行或存儲(chǔ)效率。數(shù)據(jù)結(jié)構(gòu)往往同高效的檢索算法和索引技術(shù)有關(guān)

  java中常見的幾種數(shù)據(jù)結(jié)構(gòu)(也是初級(jí)工程師常見面試題)主要是一些常見的容器,它們主要來自于Collection和Map這2個(gè)集合;以下是2個(gè)集合的總體框架

  (1)Collection接口圖

image.png

 

  

  (2)map接口圖

image.png

 下面我將每一個(gè)接口或類進(jìn)行詳細(xì)介紹,其中他們所擁有的方法就不介紹了,可以自行查API,另外,很多方法也不會(huì)用到,常見的方法就那么幾個(gè)。

1.Collction:

Collection接口繼承自超級(jí)接口Iterator,是Collection層次結(jié)構(gòu)中的根接口。Collection表示一組對(duì)象,這些對(duì)象也被稱為Collection的元素。一些Collection允許有重復(fù)的元素(例如List),但是另一些則不允許有重復(fù)的元素,即可為無序的(如Set)。JDK不提供此接口的任何直接實(shí)現(xiàn)---它會(huì)提供更為具體的子接口(如Set和List),這從上面的UML也可以看出來。此接口用來傳遞Collection,并在需要最大普遍性的地方操作這些Collection。其實(shí)現(xiàn)類的底層是由數(shù)組或者鏈表組成,數(shù)組是通過首地址+(元素長(zhǎng)度*下標(biāo)),即通過下標(biāo)查詢的,因此查詢速度快,而增刪慢(在增刪的時(shí)候,數(shù)組需要整體的移動(dòng),所以慢);鏈表不維護(hù)序號(hào),即鏈表不存在下標(biāo)的概念,**所以查詢很慢(通過地址查詢的),而增刪快(直接通過地址刪掉某一個(gè)元素,其它元素不需要移動(dòng))數(shù)組:查詢快,增刪慢;鏈表:查詢慢,增刪快

1.1.List:有序,可重復(fù)

ArrayList:底層是數(shù)組結(jié)構(gòu),線程不安全。查詢快,增刪慢

LinkedList:底層是鏈表結(jié)構(gòu),線程不安全。查詢慢,增刪快

Vector:底層是數(shù)組結(jié)構(gòu),是線程安全的,所以效率很低,已經(jīng)被ArrayList取代

1.2.Set:無序,不可重復(fù)

HashSet類及其實(shí)現(xiàn)類LinkedHashSet:底層是使用了哈希表來支持的,特點(diǎn):存取速度快,線程不安全,集合元素允許為NULL

SortedSet接口及其實(shí)現(xiàn)類TreeSet:如果元素具備自然順序的特性,那么就按照元素自然順序的特性進(jìn)行排序存儲(chǔ)。

1.3.EnumSet

EnumSet類是專為枚舉類設(shè)計(jì)的集合類,EnumSet中的所有元素都必須是指定枚舉類型的枚舉值

2.Map

Map用于保存具有映射關(guān)系的數(shù)據(jù),因此Map集合里保存著兩組值,一組值用于保存Map里的key,另外一組用于保存Map里的value,key和value都是可以任意引用類型的數(shù)據(jù)。Map的key不允許重復(fù),即同一個(gè)Map對(duì)象的任何兩個(gè)key通過equals方法比較總是返回false.給key-value起個(gè)名字:Entry,表示一個(gè)鍵值對(duì),對(duì)應(yīng)Map的一個(gè)實(shí)體;把Entry放到集合set中就是一個(gè)Map如果把Map所有value放在一起來看,元素與元素之間可以重復(fù),每個(gè)元素可以根據(jù)索引來查找,相當(dāng)于list集合,只是Map中的索引不再使用整數(shù)值,而是以另外一個(gè)對(duì)象作為索引。如果需要從List集合中取出元素,需要提供該元素的數(shù)字索引。如果需要從Map中取出元素,需要提供該元素的key索引,因此,Map也被稱為字典。

  常見的實(shí)現(xiàn)類:

2.1.HashMap:

  采用哈希表算法,此時(shí)Map中的key不會(huì)保證添加的先后順序,key也不允許重復(fù).key判斷重復(fù)的標(biāo)準(zhǔn)是:key1和key2是否equals為true,并且與hashCode相等.其中實(shí)現(xiàn)類LinkedHashMap采用了鏈表和哈希表算法

2.2.TreeMap:

sortedMap接口的實(shí)現(xiàn)類,采用紅黑樹算法,此時(shí)Map中的key會(huì)按照自然順序或定制排序進(jìn)行排序,,key也不允許重復(fù).key判斷重復(fù)的標(biāo)準(zhǔn)是:compareTo/compare的返回值是否為0.

2.3.Hashtable:

  采用哈希表算法,是HashMap的前身(類似于Vector是ArrayList的前身).打死不用.在Java的集合框架之前,表示映射關(guān)系就使用Hashtable.所有的方法都使用synchronized修飾符,線程安全的,但是性能相對(duì)HashMap較低.其子類Properties要求key和value都是String類型.

Java學(xué)習(xí)視頻入門到精通

最新java視頻教程免費(fèi)下載(從入門到精通):http://m.ilovecolors.com.cn/video.html

零基礎(chǔ)java自學(xué)教程:http://m.ilovecolors.com.cn/tutorial_java_se/

       以上就是動(dòng)力節(jié)點(diǎn)java學(xué)院小編針對(duì)“Java開發(fā):Java基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)學(xué)習(xí)”的內(nèi)容進(jìn)行的回答,希望對(duì)大家有所幫助,如果對(duì)于學(xué)習(xí)Java的學(xué)習(xí)計(jì)劃,怎么學(xué)才有效率,或者學(xué)完如果找工作的問題,請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。

相關(guān)推薦

零基礎(chǔ)學(xué)Java編程,這些內(nèi)容你一定要知道

學(xué)習(xí)Java編程了解一些免費(fèi)Java開發(fā)工具

初學(xué)者學(xué)Java編程真的很難?

新手自學(xué)Java編程需要多長(zhǎng)時(shí)間呢

學(xué)習(xí)Java編程可以做什么

 

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

免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 91不卡在线精品国产 | 天天看黄色片 | 在线免费观看视频你懂的 | 日韩最新视频一区二区三 | 免费观看黄a一级视频 | 麻豆一区区三三四区产品麻豆 | 欧洲1站2站3站 | 日韩第一页在线观看 | 成人午夜影视全部免费看 | 99爱视频| 日韩在线播放一区 | 国产一区二区三区免费观看 | 网站午夜 | 久久久久国产亚洲日本 | 亚洲国产精品ⅴa在线观看 亚洲国产精品成人久久 | 中国黄色在线观看 | 日韩欧美一区二区不卡看片 | 性激烈的欧美三级视频中文字幕 | 国产 日韩 欧美在线 | 高h啃咬花蒂 | 福利午夜在线 | 日韩美女va在线毛片免费知 | 一本大道香蕉视频在线观看 | 国产成人综合久久亚洲精品 | 久久五月天综合 | 免费看一级黄色毛片 | 欧美在线影院 | 老司机午夜剧场 | 高h喷水荡肉爽文np欲 | 黄色毛片a | 国产精品麻豆一区二区三区 | 男人边吃奶边爱边做视频刺激 | 国产视频网站在线观看 | 午夜私人影院在线观看 视频 | 又黄又爽又色视频 | 狠狠的日 | 国产精品一级 | 一个人看的www日本高清视频 | 麻豆啪啪| 九九天天影视 | 国产在线一卡 |