iOS swift-字典

Swift中的字典類型是Dictionary,泛型集合惭蟋。var修飾是可變字典,let修飾時可變字典?

聲明字典類型:

var dict1: Dictionaryvar dict2: [Int: String]??

初始化:必須進行初始化才能使用

var dict1: Dictionary= Dictionary()?

// 定義一個可變字典

var dict3 : [String : NSObject] = [String : NSObject]()

// 定義字典的同時進行初始化

let dict4 = ["name" : "xiaosan", "age" : 18]?

// 類型推導(dǎo)出 [String : NSObject] 類型

// swift中任意對象,通常不使用NSObject,使用AnyObjectvar?

dict5 : Dictionarydict5 = ["name" : "dd", "age" : 18]

字典的基本操作

// 字典的操作

var dict : [String : AnyObject] = [String : AnyObject]()

dict = ["age" : 18, "height" : 1.74, "name" : "xiaocan"]

// 添加數(shù)據(jù)

dict["weight"] = 60.0

// 刪除數(shù)據(jù)

dict.removeValueForKey("age")

// 修改字典

dict["name"] = "xiaoer"

dict["age"] = 18? // 如果沒有這個鍵药磺,則為添加數(shù)據(jù)

// 查詢

dict["name"]

字典的遍歷

// 遍歷字典中所有的值

for value in dict.values {

print(value)

}

// 遍歷字典中所有的鍵

for key in dict.keys {

print(key)

}

// 遍歷所有的鍵值對

for (key, value) in dict {

print(key)

print(value)

}

字典的合并

var myDict1 = ["name" : "xiaosan", "age" : 20]

var myDict2 = ["height" : 1.77, "address" : "taikang"]

// 字典不可以相加合并? ? 另外類型不同也不能合并

for (key, value) in myDict1 {

myDict2[key] = value

}

removeValueForKey && updateValue(forKey:)

字典的updateValue(forKey:) 方法去設(shè)置或者更新一個特定鍵的值告组,如果鍵不存在則會設(shè)置它的值,如果鍵存在則會更新它的值, 和下標不一樣是, updateValue(forKey:) 方法如果更新時癌佩,會返回原來舊的值rThis enables you to 可以使用這個來判斷是否發(fā)生了更新木缝。

var dict = ["name" : "siri", "age" : 18, "address" : "nanjing"]

iflet oldValue = dict.updateValue("Siri", forKey: "name") {

print(oldValue)? // siri

}

//使用下標語法把他的值分配為nil,來移除這個鍵值對围辙。

dict["age"] = nil

print(dict)? // ["address": nanjing, "name": Siri]

使用removeValueForKey方法我碟,如果存在鍵所對應(yīng)的值,則移除一個鍵值對姚建,并返回被移除的值矫俺,否則返回nil。

if let removedValue = dict.removeValueForKey("address") {

print("The remove dict's adddress is \(removedValue)") // The remove dict's adddress is nanjing

} else {

print("The dict does not contain a value for address")

}

參考:http://www.cnblogs.com/10-19-92/p/5627619.html

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末掸冤,一起剝皮案震驚了整個濱河市厘托,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌稿湿,老刑警劉巖铅匹,帶你破解...
    沈念sama閱讀 217,406評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異饺藤,居然都是意外死亡包斑,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評論 3 393
  • 文/潘曉璐 我一進店門涕俗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來罗丰,“玉大人,你說我怎么就攤上這事咽袜⊥杈恚” “怎么了?”我有些...
    開封第一講書人閱讀 163,711評論 0 353
  • 文/不壞的土叔 我叫張陵询刹,是天一觀的道長谜嫉。 經(jīng)常有香客問我,道長凹联,這世上最難降的妖魔是什么沐兰? 我笑而不...
    開封第一講書人閱讀 58,380評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮蔽挠,結(jié)果婚禮上住闯,老公的妹妹穿的比我還像新娘瓜浸。我一直安慰自己,他們只是感情好比原,可當我...
    茶點故事閱讀 67,432評論 6 392
  • 文/花漫 我一把揭開白布插佛。 她就那樣靜靜地躺著,像睡著了一般量窘。 火紅的嫁衣襯著肌膚如雪雇寇。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,301評論 1 301
  • 那天蚌铜,我揣著相機與錄音锨侯,去河邊找鬼。 笑死冬殃,一個胖子當著我的面吹牛囚痴,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播审葬,決...
    沈念sama閱讀 40,145評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼深滚,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了耳璧?” 一聲冷哼從身側(cè)響起成箫,我...
    開封第一講書人閱讀 39,008評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎旨枯,沒想到半個月后蹬昌,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,443評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡攀隔,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,649評論 3 334
  • 正文 我和宋清朗相戀三年皂贩,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片昆汹。...
    茶點故事閱讀 39,795評論 1 347
  • 序言:一個原本活蹦亂跳的男人離奇死亡明刷,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出满粗,到底是詐尸還是另有隱情辈末,我是刑警寧澤,帶...
    沈念sama閱讀 35,501評論 5 345
  • 正文 年R本政府宣布映皆,位于F島的核電站挤聘,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏捅彻。R本人自食惡果不足惜组去,卻給世界環(huán)境...
    茶點故事閱讀 41,119評論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望步淹。 院中可真熱鬧从隆,春花似錦诚撵、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,731評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至艾杏,卻和暖如春韧衣,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背购桑。 一陣腳步聲響...
    開封第一講書人閱讀 32,865評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留氏淑,地道東北人勃蜘。 一個月前我還...
    沈念sama閱讀 47,899評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像假残,于是被迫代替她去往敵國和親缭贡。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,724評論 2 354

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