數(shù)組與集合

數(shù)組

?邏輯結(jié)構(gòu):線性的

?物理結(jié)構(gòu):順序的存儲(chǔ)結(jié)構(gòu)

?申請(qǐng)內(nèi)存:一次申請(qǐng)一大段連續(xù)的空間吼鳞,一旦申請(qǐng)到了介蛉,內(nèi)存就固定了潜腻。

?存儲(chǔ)特點(diǎn):所有數(shù)據(jù)存儲(chǔ)在這個(gè)連續(xù)的空間中胰柑,數(shù)組中的每一個(gè)元素都是一個(gè)具體的數(shù)據(jù)(或?qū)ο螅┧煺。袛?shù)據(jù)都緊密排布肮疗,不能有間隔。


?操作

?查詢:每一個(gè)元素都有一個(gè)數(shù)值下標(biāo)扒接,可以通過(guò)下標(biāo)瞬間定位到某個(gè)元素

?增加:

?從尾部增加:數(shù)組名[total++]=新元素

?從其他位置插入:先把index位置開始所有元素后移族吻,然后數(shù)組名[index]=新元素

?刪除:先把index后面的元素前移,然后數(shù)組名[total--]=null

?改:直接數(shù)組名[index]=新元素

?優(yōu)缺點(diǎn)

?優(yōu)點(diǎn):查詢效率高

?缺點(diǎn):添加/刪除效率低珠增,因?yàn)槎忌婕暗揭苿?dòng)元素超歌;無(wú)法直接獲取有效元素的個(gè)數(shù),需要total來(lái)輔助

?使用范圍:查詢操作遠(yuǎn)多于插入和刪除操作的場(chǎng)景

集合

為了可以滿足用戶數(shù)據(jù)更多種的邏輯關(guān)系蒂教,而設(shè)計(jì)的一系列的不同于數(shù)組的可變的聚合的抽象數(shù)據(jù)類型巍举。

總的特點(diǎn):

1、只能存對(duì)象

2凝垛、容量可以自動(dòng)調(diào)節(jié)

3懊悯、可以直接獲取有效元素的個(gè)數(shù):size()

集合的幾個(gè)常用接口


詳細(xì)描述

?Collection 層次結(jié)構(gòu)中的根接口。Collection 表示一組對(duì)象梦皮,這些對(duì)象也稱為 collection 的元素炭分。一些 collection 允許有重復(fù)的元素,而另一些則不允許剑肯。一些 collection 是有序的捧毛,而另一些則是無(wú)序的。JDK 不提供此接口的任何直接實(shí)現(xiàn):它提供更具體的子接口(如 Set 和 List)實(shí)現(xiàn)。此接口通常用來(lái)傳遞 collection呀忧,并在需要最大普遍性的地方操作這些 collection师痕。

?List:有序的 collection(也稱為序列)。此接口的用戶可以對(duì)列表中每個(gè)元素的插入位置進(jìn)行精確地控制而账。用戶可以根據(jù)元素的整數(shù)索引(在列表中的位置)訪問(wèn)元素胰坟,并搜索列表中的元素。

?Set:一個(gè)不包含重復(fù)元素的collection泞辐。更確切地講笔横,set 不包含滿足 e1.equals(e2) 的元素對(duì) e1 和 e2,并且最多包含一個(gè) null 元素咐吼。正如其名稱所暗示的狠裹,此接口模仿了數(shù)學(xué)上的 set 抽象。

?SortedSet進(jìn)一步提供關(guān)于元素的總體排序的 Set汽烦。這些元素使用其自然順序進(jìn)行排序,或者根據(jù)通常在創(chuàng)建有序 set 時(shí)提供的Comparator進(jìn)行排序莉御。該 set 的迭代器將按元素升序遍歷 set撇吞。提供了一些附加的操作來(lái)利用這種排序。(此接口是 SortedMap 的 set 對(duì)應(yīng)接口)礁叔。

?Map:將鍵映射到值的對(duì)象牍颈。一個(gè)映射不能包含重復(fù)的鍵;每個(gè)鍵最多只能映射到一個(gè)值琅关。 Map 接口提供三種collection視圖煮岁,允許以鍵集、值集或鍵-值映射關(guān)系集的形式查看某個(gè)映射的內(nèi)容涣易。映射順序定義為迭代器在映射的 collection 視圖上返回其元素的順序画机。某些映射實(shí)現(xiàn)可明確保證其順序,如 TreeMap 類新症;另一些映射實(shí)現(xiàn)則不保證順序步氏,如 HashMap 類。

SortedMap進(jìn)一步提供關(guān)于鍵的總體排序的Map徒爹。該映射是根據(jù)其鍵的自然順序進(jìn)行排序的荚醒,或者根據(jù)通常在創(chuàng)建有序映射時(shí)提供的 Comparator 進(jìn)行排序。對(duì)有序映射的 collection 視圖(由 entrySet隆嗅、keySet 和 values 方法返回)進(jìn)行迭代時(shí)界阁,此順序就會(huì)反映出來(lái)。要采用此排序方式胖喳,還需要提供一些其他操作(此接口是 SortedSet 的對(duì)應(yīng)映射)泡躯。

概況總結(jié)

?Collection接口:定義了存取一組對(duì)象的方法,其子接口Set和List分別定義了存儲(chǔ)方式

?Set:中的數(shù)據(jù)對(duì)象沒有順序且不可以重復(fù)

?List:中的數(shù)據(jù)對(duì)象有順序且可以重復(fù)

?Map接口定義了存儲(chǔ)“鍵(key)-值(value)映射對(duì)”的方法

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市精续,隨后出現(xiàn)的幾起案子坝锰,更是在濱河造成了極大的恐慌,老刑警劉巖重付,帶你破解...
    沈念sama閱讀 216,544評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件顷级,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡确垫,警方通過(guò)查閱死者的電腦和手機(jī)弓颈,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)删掀,“玉大人翔冀,你說(shuō)我怎么就攤上這事∨幔” “怎么了纤子?”我有些...
    開封第一講書人閱讀 162,764評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)款票。 經(jīng)常有香客問(wèn)我控硼,道長(zhǎng),這世上最難降的妖魔是什么艾少? 我笑而不...
    開封第一講書人閱讀 58,193評(píng)論 1 292
  • 正文 為了忘掉前任卡乾,我火速辦了婚禮,結(jié)果婚禮上缚够,老公的妹妹穿的比我還像新娘幔妨。我一直安慰自己,他們只是感情好谍椅,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,216評(píng)論 6 388
  • 文/花漫 我一把揭開白布误堡。 她就那樣靜靜地躺著,像睡著了一般雏吭。 火紅的嫁衣襯著肌膚如雪埂伦。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,182評(píng)論 1 299
  • 那天思恐,我揣著相機(jī)與錄音沾谜,去河邊找鬼。 笑死胀莹,一個(gè)胖子當(dāng)著我的面吹牛基跑,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播描焰,決...
    沈念sama閱讀 40,063評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼媳否,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼栅螟!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起篱竭,我...
    開封第一講書人閱讀 38,917評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤力图,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后掺逼,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體吃媒,經(jīng)...
    沈念sama閱讀 45,329評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,543評(píng)論 2 332
  • 正文 我和宋清朗相戀三年吕喘,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了赘那。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,722評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡氯质,死狀恐怖募舟,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情闻察,我是刑警寧澤拱礁,帶...
    沈念sama閱讀 35,425評(píng)論 5 343
  • 正文 年R本政府宣布,位于F島的核電站辕漂,受9級(jí)特大地震影響呢灶,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜钮热,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,019評(píng)論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望烛芬。 院中可真熱鬧隧期,春花似錦、人聲如沸赘娄。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,671評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)遣臼。三九已至性置,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間揍堰,已是汗流浹背鹏浅。 一陣腳步聲響...
    開封第一講書人閱讀 32,825評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留屏歹,地道東北人隐砸。 一個(gè)月前我還...
    沈念sama閱讀 47,729評(píng)論 2 368
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像蝙眶,于是被迫代替她去往敵國(guó)和親季希。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,614評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容