字典

1.字典的創(chuàng)建

     /*
     字典:保存數(shù)據(jù)的一種工具
     分類:不可變字典数苫、可變字典
     詳情:通過鍵(key)-值(value)的形式存儲數(shù)據(jù)
    
     
     注意:
     1之拨、value可以相同,key必須唯一
     2、字典保存對象類型
     3堂竟、key一般為字符串
     4糠聪、字典中的多個key-value是沒有順序的
     */

不可變字典

   //創(chuàng)建空字典
    NSDictionary *dic1 = [NSDictionary dictionary];
    NSDictionary *dic2 = [[NSDictionary alloc] init];
    
    
    //對像方法創(chuàng)建
    NSDictionary *dic3 = [[NSDictionary alloc] initWithObjectsAndKeys:@"sunck", @"1", @"is", @"2", @"a", @"3", @"good", @"4", @"man", @"5", nil];
    NSLog(@"dic3 = %@", dic3);
    
    
    //注意:前后兩個數(shù)組(數(shù)據(jù)婆排,鍵值)一一對應的
    NSDictionary *dic4 = [[NSDictionary alloc] initWithObjects:@[@"sunck", @"is", @"a", @"good", @"man"] forKeys:@[@"1", @"2", @"3", @"4", @"5"]];
    
    //通過已存在的字典創(chuàng)建新的字典
    NSDictionary *dic5 = [[NSDictionary alloc] initWithDictionary:dic4];
    
    
    //類方法:
    NSDictionary *dic6 = [NSDictionary dictionaryWithObjectsAndKeys:@"sunck", @"1", @"is", @"2", @"a", @"3", @"good", @"4", @"man", @"5", nil];
    NSDictionary *dic7 = [NSDictionary dictionaryWithObjects:@[@"sunck", @"is", @"a", @"good", @"man"] forKeys:@[@"1", @"2", @"3", @"4", @"5"]];
    NSDictionary *dic8 = [NSDictionary dictionaryWithDictionary:dic4];
    
    //注意:鍵值之間用:鏈接声旺,多個鍵值對用,分隔笔链,最后省略了nil
    NSDictionary *dic9 = @{@"1": @"sunck", @"2": @"is", @"3": @"a", @"4": @"good", @"5": @"man"};

不可變字典的其他方法

  //取值
  NSDictionary *dic1 = @{@"1": @"sunck", @"2": @"is", @"3": @"a", @"4": @"good", @"5": @"man", @"6": @"Oh", @"7": @"he", @"8": @"is", @"9": @"good"};
  NSLog(@"dic1 = %@", dic1);
  //取一個值
  NSString *str = [dic1 objectForKey:@"3"];
  NSString *str2 = dic1[4];
  
  //取多個值
  NSArray * arr1 = [dic1 objectsForKeys:@[@"1",@"2",@"3"] notFoundMarker:@"NotFound"];
  //取s所有的值
  NSArray *value = [dic1 allValues];
  //取所有的key
  NSArray *key = [dic1 allKeys];
  //取出所有value對應的key
  NSArray *key3 = [dic1 allKeysForObject:@"sdd"];
  
  //遍歷字典
  //針對字典來說段只,in的前面是字典中的key
  //in的后面是要遍歷的集合(數(shù)組、字典)
  for (NSString *key in dic1) {
    NSString *value = [dic1 objectForKey:key];
  }
  
  //枚舉遍歷
  NSEnumerator *emumer = [dic1 keyEnumerator];
  id keyString = nil;
  while (keyString = [emumer nextObject]) {
    NSString *value = [dic1 objectForKey:keyString ];
  }

2.可變字典的增刪改查

//增
  NSMutableDictionary *mutDic = [[NSMutableDictionary alloc]initWithObjects:@[@"sun", @"is", @"a", @"good", @"man"] forKeys:@[@"1", @"2", @"3", @"4", @"5"]];
  //增加一個鍵值對
  [mutDic setObject:@"sdf" forKey:@"7"];
  //增加多個鍵值對,
  //注意:如果增加時鉴扫,鍵值對鍵一樣赞枕,原數(shù)據(jù)會被修改為當前數(shù)據(jù)
  [mutDic addEntriesFromDictionary:@{@"6":@"sdf",@"3":@"sdf"}];
  
  //刪
  [mutDic removeObjectForKey:@"6"];
  //刪除多個
  [mutDic removeObjectsForKeys:@"6",@"5"];
  //刪除所有的
  [mutDic removeAllObjects];
  //改
  NSMutableDictionary *mutDic3 = [[NSMutableDictionary alloc] initWithObjects:@[@"sunck", @"is", @"a", @"good", @"man", @"!"] forKeys:@[@"1", @"2", @"3", @"4", @"5", @"6"]];
  [mutDic3 setObject:@"nice" forKey:@"4"];
  NSLog(@"mutDic3-1 = %@", mutDic3);
  [mutDic3 setValue:@"handsome" forKey:@"4"];
  NSLog(@"mutDic3-2 = %@", mutDic3);
  
  //將字典替換為后面的字典
  [mutDic3 setDictionary:mutDic1];
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市坪创,隨后出現(xiàn)的幾起案子炕婶,更是在濱河造成了極大的恐慌,老刑警劉巖莱预,帶你破解...
    沈念sama閱讀 222,865評論 6 518
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件柠掂,死亡現(xiàn)場離奇詭異,居然都是意外死亡依沮,警方通過查閱死者的電腦和手機涯贞,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,296評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來危喉,“玉大人宋渔,你說我怎么就攤上這事」枷蓿” “怎么了皇拣?”我有些...
    開封第一講書人閱讀 169,631評論 0 364
  • 文/不壞的土叔 我叫張陵,是天一觀的道長薄嫡。 經(jīng)常有香客問我氧急,道長颗胡,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 60,199評論 1 300
  • 正文 為了忘掉前任态蒂,我火速辦了婚禮杭措,結果婚禮上,老公的妹妹穿的比我還像新娘钾恢。我一直安慰自己手素,他們只是感情好,可當我...
    茶點故事閱讀 69,196評論 6 398
  • 文/花漫 我一把揭開白布瘩蚪。 她就那樣靜靜地躺著泉懦,像睡著了一般。 火紅的嫁衣襯著肌膚如雪疹瘦。 梳的紋絲不亂的頭發(fā)上崩哩,一...
    開封第一講書人閱讀 52,793評論 1 314
  • 那天,我揣著相機與錄音言沐,去河邊找鬼邓嘹。 笑死,一個胖子當著我的面吹牛险胰,可吹牛的內(nèi)容都是我干的汹押。 我是一名探鬼主播,決...
    沈念sama閱讀 41,221評論 3 423
  • 文/蒼蘭香墨 我猛地睜開眼起便,長吁一口氣:“原來是場噩夢啊……” “哼棚贾!你這毒婦竟也來了?” 一聲冷哼從身側響起榆综,我...
    開封第一講書人閱讀 40,174評論 0 277
  • 序言:老撾萬榮一對情侶失蹤妙痹,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后鼻疮,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體怯伊,經(jīng)...
    沈念sama閱讀 46,699評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,770評論 3 343
  • 正文 我和宋清朗相戀三年判沟,在試婚紗的時候發(fā)現(xiàn)自己被綠了耿芹。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,918評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡水评,死狀恐怖猩系,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情中燥,我是刑警寧澤寇甸,帶...
    沈念sama閱讀 36,573評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響拿霉,放射性物質發(fā)生泄漏吟秩。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,255評論 3 336
  • 文/蒙蒙 一绽淘、第九天 我趴在偏房一處隱蔽的房頂上張望涵防。 院中可真熱鬧,春花似錦沪铭、人聲如沸壮池。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,749評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽椰憋。三九已至,卻和暖如春赔退,著一層夾襖步出監(jiān)牢的瞬間橙依,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,862評論 1 274
  • 我被黑心中介騙來泰國打工硕旗, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留窗骑,地道東北人。 一個月前我還...
    沈念sama閱讀 49,364評論 3 379
  • 正文 我出身青樓漆枚,卻偏偏與公主長得像创译,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子浪读,可洞房花燭夜當晚...
    茶點故事閱讀 45,926評論 2 361

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