List集合中的序指的是什麼意思?

2021-08-16 01:47:55 字數 2303 閱讀 5886

首先,

list

與set

具有相似性,它們都是單列元素的集合,所以,它們有乙個功共同的父介面,叫

collection

。set

裡面不允許有重複的元素,所謂重複,即不能有兩個相等(注意,不是僅僅是相同)的物件

,即假設

set集合中有了乙個

a物件,現在我要向

set集合再存入乙個

b物件,但

b物件與a物件

equals

相等,則

b物件儲存不進去,所以,

set集合的

add方法有乙個

boolean

的返回值,當集合中沒有某個元素,此時

add方法可成功加入該元素時,則返回

true

,當集合含有與某個元素

equals

相等的元素時,此時

add方法無法加入該元素,返回結果為

false

。set

取元素時,沒法說取第幾個,只能以

iterator

介面取得所有的元素,再逐一遍歷各個元素。

list表示有先後順序的集合,

注意,不是那種按年齡、按大小、按**之類的排序。當我們多次呼叫

add(obj e)

方法時,每次加入的物件就像火車站買票有排隊順序一樣,按先來後到的順序排序。有時候,也可以插隊,即呼叫

add(int index,obj e)

方法,就可以指定當前物件在集合中的存放位置。乙個物件可以被反覆儲存進

list

中,每呼叫一次

add方法,這個物件就被插入進集合中一次,其實,並不是把這個物件本身儲存進了集合中,而是在集合中用乙個索引變數指向這個物件,當這個物件被

add多次時,即相當於集合中有多個索引指向了這個物件,如圖

x所示。

list

除了可以以

iterator

介面取得所有的元素,再逐一遍歷各個元素之外,還可以呼叫

get(index i)

來明確說明取第幾個。

map與

list

和set

不同,它是雙列的集合,其中有

put方法,定義如下:

put(obj key,obj value)

,每次儲存時,要儲存一對

key/value

,不能儲存重複的

key,這個重複的規則也是按

equals

比較相等。取則可以根據

key獲得相應的

value

,即get(object key)

返回值為

key所對應的

value

。另外,也可以獲得所有的

key的結合,還可以獲得所有的

value

的結合,還可以獲得

key和

value

組合成的

map.entry

物件的集合。

list 

以特定次序來持有元素,可有重複元素。

set 

無法擁有重複元素

,內部排序。

map 

儲存key-value

值,value

可多值。

hashset

按照hashcode

值的某種運算方式進行儲存,而不是直接按

hashcode

值的大小進行儲存。例如,

"abc" ---> 78

,"def"---> 62

,"xyz" ---> 65

在hashset

中的儲存順序不是

62,65,78

,linkedhashset

按插入的順序儲存,那被儲存物件的

hashcode

方法還有什麼作用呢?

hashset

集合比較兩個物件是否相等,首先看

hashcode

方法是否相等,然後看

equals

方法是否相等。

new 

兩個student

插入到hashset

中,看hashset

的size

,實現hashcode

和equals

方法後再看

size

。同乙個物件可以在

vector

中加入多次。往集合裡面加元素,相當於集合裡用一根繩子連線到了目標物件。往

hashset

中卻加不了多次的。

Python中容器指的是什麼?

容器 容器是一種把多個元素組織在一起的資料結構,容器中的元素可以逐個地迭代獲取,可以用in,not in關鍵字判斷元素是否包含在容器中。容器是一種可以包含其他型別物件 如列表 元組 字典等 作為元素的物件 容器僅僅只是用來存放資料的,我們平常看到的 l 1,2,3,4 等等,好像我們可以直接從列表這...

android中的 inflate是什麼意思

inflate 的作用就是將乙個用xml定義的布局檔案查詢出來,注意與findviewbyid 的區別,inflate是載入乙個布局檔案,而findviewbyid則是從布局檔案中查詢乙個控制項。1.獲取layoutinflater物件有三種方法 layoutinflater inflater la...

Linux的shell指的是什麼

shell的含義 shell的英文含義是 殼 它是相對於核心來說的,因為它是建立在核心的基礎上,面向於使用者的一種表現形式,比如我們看到乙個球,見到的是它的殼,而非核。linux中的shell,是指 乙個面向使用者的命令介面,表現形式 就是乙個可以由使用者錄入的介面,這個介面也可以反饋執行資訊 sh...