字典與集合

2021-07-10 10:11:26 字數 1249 閱讀 2681

一、字典

1、字典⽤於儲存具有對映關係(key-value對)資料的集合。

2、對於「name:張三」,key就是「name」,key對應的value是「張三」

3、乙個key-value對 認為是乙個條目(entry),字典是儲存key-value對的容器。

二、字典類的特點

1、與陣列不同,字典靠key訪問元素;2、key不能重複,value必須是物件;3、鍵值對在字典中是無序儲存的。4、字典分不可變字典和可變字典;

不可變字典: 字典⼀旦建立,鍵值對就不可更改,不可新增,不可刪除。 僅能讀取key或者value。

可變字典 :nsdictionary的⼦類。 可以對管理的鍵值對進⾏增、刪、改。

三、集合(set)

與數學中的集合⼀樣,集合中的元素唯⼀。 儲存的元素是⽆序的 儲存元素必須是物件型別 ios中⽤set表⽰集合,分nsset和nsmutableset;

四、快速列舉

for (<#type *object#> in <#collection#> )

1、object是遍歷得到的元素物件;2、collection是集合型別的物件:陣列、字典、集合;3、陣列列舉得到陣列中的元素物件,字典列舉得到字典中key值,集合列舉得到集合中的元素物件。4、

通過快速列舉從字典中取資料是常用的方式,在快速列舉中獲取的是

key,然後通過

key找到

value;

陣列預設排序

[array sortedarrayusingselector:]

[mutablearray sortusingselector:]

@selector,獲取⽅法名。這個⽅法名是陣列中元素的⽅法。 預設使⽤公升序排列。

呼叫陣列的排序方法進行排序,排序方法的引數是乙個sel型別,是oc中的方法型別,@selector是方法選取器,在方法選取器中直接寫方法名,選取的方法就是比較方法,比較方法是給陣列中的元素執行

nsarray *newarr = [personarray sortedarrayusingselector:@selector(comparebydes:)];

五、總結

字典是⼀種儲存鍵值對的容器,靠key來索引資料。

集合儲存的資料⽆序、不重。

for(type *obj in collection)是oc中快速遍歷資料的⽅式。

陣列封裝了排序,同時為我們提供了接⼝,⽅便我們控制排序。

每⼀種collection都有⾃⼰特點,使⽤符合⾃⼰需求的collection。 

字典與集合

示例 字典 example dict print example dict 77 執行結果 88 print example dict.get 55 執行結果 xx print example dict.get 2222222222 執行結果 none print example dict.get ...

字典與集合

一.字典 1 建立字典與呼叫字典 形式字典名稱 dict1 字典的建立 dict2 建立乙個空字典 dict1 k1 v1 2 dict函式的應用 dict1 dict 用dict函式創造乙個空字典 dict2 dict 1,2 2 3 用dict函式建立乙個字典,注意括號的數量,內部既可以用元組,...

字典與集合

day7 emmm5 6待我有空了再補卡 字典是對映型別,列表和元組為序列型別 字典可以有兩種建立方法 1 a 華電 廈大 上交 b 河北 福建 上海 print b a.index 廈大 福建元組的建立用小括號 再利用index查詢 b 中儲存的 對 a 中相應編號的詞的釋義 2 運用dict d...