#pragma mark 字典類

pragma mark 字典類

字典的存儲(chǔ)是一個(gè)key對應(yīng)一個(gè)value圆裕,稱為鍵值對存儲(chǔ)广鳍,字典的存儲(chǔ)是無序的荆几,字面量創(chuàng)建字典時(shí),key在前value在后赊时,其他方式創(chuàng)建都是value—key這樣對應(yīng)的
字典的添加是:[mDic setObject:@"xiAn" forKey:@“address"];
// 1. 創(chuàng)建一個(gè)字典
NSDictionary *dictionary3 = [NSDictionary dictionaryWithObjectsAndKeys:@"1",@"a",@"2",@"b",@"3",@"c", nil];

 NSDictionary *dic = @{@"2":@"3"};//字面量創(chuàng)建不可變字典

//  2. 獲取字典中所有的key吨铸,并且拿到key的個(gè)數(shù)
NSArray *allkeys = [dictionary3 allKeys];
NSLog(@"所有的key:%@", allkeys);
NSLog(@"長度是:%d",(int)[allkeys count]);

//  3.使用for循環(huán)遍歷字典
for (int i = 0; i < [allkeys count]; i++) {
    // 3.1 獲取到key
    NSString *key = [allkeys objectAtIndex:i];//獲取下標(biāo)為i的key
    //3.2根據(jù)獲取到的key訪問value
    NSString *value = [dictionary3 objectForKey:key];//找出key的值的值,然后賦值給value
    //3.3一次輸出key,value(key是目錄蛋叼,value是內(nèi)容)
    NSLog(@"key = %@ value = %@",key,value);
    
}

pragma mark 不可變的字典

//    創(chuàng)建一個(gè)不可變的字典
NSDictionary  *dictionary = [[NSDictionary alloc]initWithObjectsAndKeys:@"zhangsan ",@"mingzi ",@"nan",@"xingbie", nil];
NSLog(@"%@",dictionary);

//  使用數(shù)組創(chuàng)建出字典對象
//  1.創(chuàng)建出key值數(shù)組
NSArray *keyArray = [NSArray arrayWithObjects:@"name",@"gender",@"age", nil];

//  2.創(chuàng)建出value數(shù)值組:value值的數(shù)值元素必須和key數(shù)值元素—— ——對應(yīng)
NSArray *valueArray = [NSArray arrayWithObjects:@"zhansan",@"nan",@"23", nil];

//  3.使用數(shù)組創(chuàng)建字典的方式焊傅,創(chuàng)建出一個(gè)字典對象
NSDictionary  *dictionary1 = [[NSDictionary alloc]initWithObjects:valueArray forKeys:keyArray];
NSLog(@"%@",dictionary1);

//  4.使用一個(gè)已知的字典創(chuàng)建新字典
NSDictionary  *dictionary2 = [NSDictionary dictionaryWithDictionary:dictionary1];
NSLog(@"%@",dictionary2);

pragma mark可變的字典

// 1.創(chuàng)建一個(gè)可變字典

//便利構(gòu)造器創(chuàng)建
NSMutableDictionary *mDic = [NSMutableDictionary dictionaryWithDictionary:dictionary2];

//字面量創(chuàng)建可變字典
NSMutableDictionary *mDic = [@{@"2":@"3"}mutableCopy];
NSLog(@"%@",mDic);

//  2.獲取字典里面所有key的值,返回值是數(shù)組類型
NSArray *keyArray1 = [dictionary allKeys];
NSLog(@"%@",keyArray1);

//  3.獲取字典里面所有value的值,返回值是數(shù)組類型
NSArray *valueArray1 = [mDic allValues];
NSLog(@"%@",valueArray1);

//  4. 在字典里面通過key值取value
id value = [mDic objectForKey:@"name"];
NSLog(@"%@",value);

//  5. 給可變字典添加建值對的方法
[mDic setObject:@"xiAn" forKey:@"address"];
NSLog(@"%@",mDic);

//  6.修改可變字典的value和給字典添加新建值對的方法一樣狈涮,如果key值以前沒有,則該方法是添加方法鸭栖,如果key值以前存在歌馍,則該方法是修改value方法。
[mDic setObject:@"0" forKey:@"age"];
NSLog(@"%@",mDic);

//   7. 刪除可變字典的鍵值對
// 首先根據(jù)key值來刪除所對應(yīng)的value
[mDic removeObjectForKey:@"gender"];
NSLog(@"%@",mDic);

//   8.將若干個(gè)key封裝在一個(gè)數(shù)組晕鹊,然后作為參數(shù)傳入松却,刪除方法會(huì)根據(jù)數(shù)組中的key刪除對數(shù)組中的key刪除對應(yīng)的value

[mDic removeObjectsForKeys:[NSArray arrayWithObjects:@"address",@"name", nil]];
NSLog(@"%@",mDic);

//   9.刪除字典中的全部value
[mDic removeAllObjects];
NSLog(@"%@",mDic);

// 創(chuàng)建一個(gè)省,里面包含市和區(qū)
// 1.先創(chuàng)建一個(gè)組定義西安的某個(gè)區(qū)溅话,
// 2.在創(chuàng)建一個(gè)組晓锻,定義西安的另一個(gè)區(qū),
// 3.然后創(chuàng)建第三個(gè)組來盛放前兩個(gè)組的內(nèi)容飞几。
// 4.在創(chuàng)建一個(gè)名為西安的字典key是西安砚哆,value是前兩個(gè)組的內(nèi)容(ar3)
// 5.在創(chuàng)建一個(gè)組定義渭南的的某個(gè)區(qū),
// 6.在創(chuàng)建一個(gè)名為渭南的字典key是渭南屑墨,value是(arc)
// 7.在創(chuàng)建一個(gè)組來盛放前兩個(gè)字典的內(nèi)容:(西安和渭南)
// 8.在創(chuàng)建一個(gè)名為陜西的字典key是陜西躁锁,value是前兩個(gè)字典的內(nèi)容(arc1)
// 9.最后輸出內(nèi)容
NSArray *ar1 = [NSArray arrayWithObjects:@"yaTaQu",@"quMing", nil];
NSArray *ar2 =[NSArray arrayWithObjects:@"gaoXinQu",@"quMing", nil];
NSArray *ar3 = [NSArray arrayWithObjects:ar1,ar2 ,nil];
NSDictionary *xiAn = [NSDictionary dictionaryWithObject:ar3 forKey:@"xiAn"];
NSArray *arc = [NSArray arrayWithObjects:@"changYangQu",@"quMing", nil];
NSDictionary *weiNan = [NSDictionary dictionaryWithObject:arc forKey:@"weiNan"];
NSArray *arc1 = [NSArray arrayWithObjects:xiAn,weiNan, nil];
NSDictionary *shengFen = [NSDictionary dictionaryWithObject:arc1 forKey:@"shanXi"];
NSLog(@"%@",shengFen);

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市卵史,隨后出現(xiàn)的幾起案子战转,更是在濱河造成了極大的恐慌,老刑警劉巖以躯,帶你破解...
    沈念sama閱讀 217,509評論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件槐秧,死亡現(xiàn)場離奇詭異,居然都是意外死亡忧设,警方通過查閱死者的電腦和手機(jī)刁标,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,806評論 3 394
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來见转,“玉大人命雀,你說我怎么就攤上這事≌扼铮” “怎么了吏砂?”我有些...
    開封第一講書人閱讀 163,875評論 0 354
  • 文/不壞的土叔 我叫張陵撵儿,是天一觀的道長。 經(jīng)常有香客問我狐血,道長淀歇,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,441評論 1 293
  • 正文 為了忘掉前任匈织,我火速辦了婚禮浪默,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘缀匕。我一直安慰自己纳决,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,488評論 6 392
  • 文/花漫 我一把揭開白布乡小。 她就那樣靜靜地躺著阔加,像睡著了一般。 火紅的嫁衣襯著肌膚如雪满钟。 梳的紋絲不亂的頭發(fā)上胜榔,一...
    開封第一講書人閱讀 51,365評論 1 302
  • 那天,我揣著相機(jī)與錄音湃番,去河邊找鬼夭织。 笑死,一個(gè)胖子當(dāng)著我的面吹牛吠撮,可吹牛的內(nèi)容都是我干的尊惰。 我是一名探鬼主播,決...
    沈念sama閱讀 40,190評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼纬向,長吁一口氣:“原來是場噩夢啊……” “哼择浊!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起逾条,我...
    開封第一講書人閱讀 39,062評論 0 276
  • 序言:老撾萬榮一對情侶失蹤琢岩,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后师脂,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體担孔,經(jīng)...
    沈念sama閱讀 45,500評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,706評論 3 335
  • 正文 我和宋清朗相戀三年吃警,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了糕篇。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,834評論 1 347
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡酌心,死狀恐怖拌消,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情安券,我是刑警寧澤墩崩,帶...
    沈念sama閱讀 35,559評論 5 345
  • 正文 年R本政府宣布氓英,位于F島的核電站,受9級特大地震影響鹦筹,放射性物質(zhì)發(fā)生泄漏铝阐。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,167評論 3 328
  • 文/蒙蒙 一铐拐、第九天 我趴在偏房一處隱蔽的房頂上張望徘键。 院中可真熱鬧,春花似錦遍蟋、人聲如沸吹害。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,779評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽赠制。三九已至,卻和暖如春挟憔,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背烟号。 一陣腳步聲響...
    開封第一講書人閱讀 32,912評論 1 269
  • 我被黑心中介騙來泰國打工绊谭, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人汪拥。 一個(gè)月前我還...
    沈念sama閱讀 47,958評論 2 370
  • 正文 我出身青樓达传,卻偏偏與公主長得像,于是被迫代替她去往敵國和親迫筑。 傳聞我的和親對象是個(gè)殘疾皇子宪赶,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,779評論 2 354

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

  • 數(shù)組: 系統(tǒng)提供的數(shù)組類:類似于C語言中的數(shù)組功能。 數(shù)組是一個(gè)大容器脯燃,數(shù)組中可以儲(chǔ)存不同的聯(lián)系對象搂妻,但必須要保證...
    Sherry宇閱讀 366評論 0 0
  • //將NSData轉(zhuǎn)化為NSString NSString* str = [[NSString alloc] in...
    脫脫夫斯基閱讀 1,142評論 0 52
  • //將NSData轉(zhuǎn)化為NSString NSString* str = [[NSString alloc]...
    吾是小馬哥閱讀 2,456評論 0 3
  • 一逝嚎、數(shù)組類 數(shù)組是一個(gè)有序的集合扁瓢,OC中的數(shù)組只能儲(chǔ)存對象類型,但是對于對象的類型沒有限制补君。 通過下標(biāo)訪問數(shù)組元素...
    劉可愛最可愛閱讀 345評論 0 0
  • 首先來看看開發(fā)語言中集合的概念引几,把一些能夠確定的不同的對象看成一個(gè)整體,那么就可以說這個(gè)整體是由這些對象全體構(gòu)成的...
    SankQin閱讀 3,260評論 0 0