ArrayList,Vector,LinkedList的特性有哪些-創(chuàng)新互聯(lián)

這篇文章主要講解了“ArrayList,Vector, LinkedList的特性有哪些”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“ArrayList,Vector, LinkedList的特性有哪些”吧!

專注于為中小企業(yè)提供網(wǎng)站制作、成都網(wǎng)站制作服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)達(dá)拉特免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了近千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

ArrayList,Vector, LinkedList的特性有哪些
  首先,List 與 Set 具有相似性,它們都是單列元素的集合,所 以,它們有一個(gè)功共同的父接口,叫 Collection。Set 里面不 允許有重復(fù)的元素,所謂重復(fù),即不能有兩個(gè)相等(注意,不 是僅僅是相同)的對(duì)象 ,即假設(shè) Set 集合中有了一個(gè) A 對(duì)象, 現(xiàn)在我要向 Set 集合再存入一個(gè) B 對(duì)象,但 B 對(duì)象與 A 對(duì)象 equals 相等,則 B 對(duì)象存儲(chǔ)不進(jìn)去,所以,Set 集合的 add 方 法有一個(gè) boolean 的返回值,當(dāng)集合中沒有某個(gè)元素,此時(shí) add 方法可成功加入該元素時(shí),則返回 true,當(dāng)集合含有與某 個(gè)元素 equals 相等的元素時(shí),此時(shí) add 方法無法加入該元素, 返回結(jié)果為 false。Set 取元素時(shí),沒法說取第幾個(gè),只能以 Iterator 接口取得所有的元素,再逐一遍歷各個(gè)元素。


  List 表示有先后順序的集合, 注意,不是那種按年齡、按大小、按價(jià)格之類的排序。當(dāng)我們多次調(diào)用 add(Obj e)方法時(shí), 每次加入的對(duì)象就像火車站買票有排隊(duì)順序一樣,按先來后到 的順序排序。有時(shí)候,也可以插隊(duì),即調(diào)用add(intindex,Obj e)方法,就可以指定當(dāng)前對(duì)象在集合中的存放位置。一個(gè)對(duì)象可以被反復(fù)存儲(chǔ)進(jìn) List 中,每調(diào)用一次 add 方 法,這個(gè)對(duì)象就被插入進(jìn)集合中一次,其實(shí),并不是把這個(gè)對(duì) 象本身存儲(chǔ)進(jìn)了集合中,而是在集合中用一個(gè)索引變量指向這個(gè)對(duì)象,當(dāng)這個(gè)對(duì)象被 add 多次時(shí),即相當(dāng)于集合中有多個(gè)索引指向了這個(gè)對(duì)象,如圖 x 所示。List 除了可以以 Iterator接口取得所有的元素,再逐一遍歷各個(gè)元素之外,還可以調(diào)用get(index i)來明確說明取第幾個(gè)。


  Map與 List 和 Set 不同,它是雙列的集合,其中有 put 方法,定義如下:put(obj key,obj value),每次存儲(chǔ)時(shí),要存儲(chǔ)一對(duì) key/value,不能存儲(chǔ)重復(fù)的 key,這個(gè)重復(fù)的規(guī)則也是按equals 比較相等。取則可以根據(jù) key 獲得相應(yīng)的 value,即get(Object key)返回值為 key 所對(duì)應(yīng)的 value。另外,也可以 獲得所有的 key 的結(jié)合,還可以獲得所有的 value 的結(jié)合,還 可以獲得 key 和 value 組合成的 Map.Entry 對(duì)象的集合。


  List 以特定次序來持有元素,可有重復(fù)元素。Set 無法擁有重復(fù)元素,內(nèi)部排序。Map 保存 key-value 值,value 可多值。


  HashSet 按照 hashcode 值的某種運(yùn)算方式進(jìn)行存儲(chǔ),而不是直接按 hashCode 值的大小進(jìn)行存儲(chǔ)。例如,"abc" ---> 78,


  "def" ---> 62,"xyz" ---> 65 在 hashSet 中的存儲(chǔ)順序不是62,65,78,這些問題感謝以前一個(gè)叫崔健的學(xué)員提出,最后通過查看源代碼給他解釋清楚,看本次培訓(xùn)學(xué)員當(dāng)中有多少能看懂源碼。LinkedHashSet 按插入的順序存儲(chǔ),那被存儲(chǔ)對(duì)象的hashcode 方法還有什么作用呢?學(xué)員想!hashset 集合比較兩個(gè)對(duì)象是否相等,首先看 hashcode 方法是否相等,然后看 equals 方法是否相等。new 兩個(gè) Student 插入到 HashSet 中,看 HashSet 的 size,實(shí)現(xiàn) hashcode 和 equals 方法后再看 size。


  同一個(gè)對(duì)象可以在 Vector 中加入多次。往集合里面加元素,相當(dāng)于集合里用一根繩子連接到了目標(biāo)對(duì)象。往 HashSet 中卻加不了多次的。

感謝各位的閱讀,以上就是“ArrayList,Vector, LinkedList的特性有哪些”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)ArrayList,Vector, LinkedList的特性有哪些這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計(jì)公司,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

文章名稱:ArrayList,Vector,LinkedList的特性有哪些-創(chuàng)新互聯(lián)
本文來源:http://bm7419.com/article6/dihpig.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管微信小程序、手機(jī)網(wǎng)站建設(shè)、定制網(wǎng)站、網(wǎng)站改版關(guān)鍵詞優(yōu)化

廣告

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

微信小程序開發(fā)