iOS中的NSDictionary和NSMutableDictionary

NSDictionary基本用法

    //創(chuàng)建
    NSDictionary *dic = [NSDictionary dictionaryWithObject:@"value" forKey:@"key"];
    NSLog(@"%@",dic[@"key"]);

    NSDictionary *dic1 = [NSDictionary dictionaryWithObjectsAndKeys:@"value",@"key",@"A",@"a",@"B",@"b",@"C",@"c", nil];
    NSLog(@"%@",dic1[@"key"]);
    
    NSDictionary *dic2 = @{@"key":@"value",@"a":@"A",@"b":@"B",@"c":@"C"};
    NSLog(@"%@",dic2[@"key"]);

鍵值對個數(shù)

    NSLog(@"%lu",(unsigned long)[dic1 count]);//4
    NSArray *keys = [dic1 allKeys];
    NSLog(@"%@",keys);//b,key,c,a
    NSArray *values = [dic1 allValues];
    NSLog(@"%@",values);//B,value,C,A

遍歷

    [dic2 enumerateKeysAndObjectsUsingBlock:^(id  _Nonnull key, id  _Nonnull obj, BOOL * _Nonnull stop) {
        NSLog(@"key:%@--obj:%@",key,obj);
    }];
    /*
     key:b--obj:B
     key:key--obj:value
     key:c--obj:C
     key:a--obj:A
     */

字典讀寫(無序)

    BOOL flag = [dic2 writeToFile:@"/Users/soso/Desktop/demo1/NSArray/demo.plist" atomically:YES];
    NSLog(@"%d",flag);
    NSDictionary *dic3 = [NSDictionary dictionaryWithContentsOfFile:@"/Users/soso/Desktop/demo1/NSArray/demo.plist"];
    NSLog(@"%@",dic3);
    /*
     a = A;
     b = B;
     c = C;
     key = value;
     */

NSMutableDictionary

    //創(chuàng)建一個空字典
    NSMutableDictionary *dic4 = [NSMutableDictionary dictionary];
    //添加
    [dic4 setObject:@"value" forKey:@"key"];
    //將傳入字典所有的鍵值對取出來添加到dic中
    [dic4 setValuesForKeysWithDictionary:@{@"key1":@"Value1"}];
    NSLog(@"%@",dic4);
    /*
     key = value;
     key1 = Value1;
     */
    
     //刪除
    [dic4 removeObjectForKey:@"key1"];
    NSLog(@"%@",dic4);//key = value;

    [dic4 removeObjectsForKeys:@[@"key",@"key1"]];
    NSLog(@"%@",dic4);

    [dic4 removeAllObjects];
    
    //修改
    [dic4 setObject:@"newValue" forKey:@"key"];
    NSLog(@"%@",dic4);
    /*
     key = newValue;
     key1 = Value1;
     */
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末躏啰,一起剝皮案震驚了整個濱河市驾中,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖既鞠,帶你破解...
    沈念sama閱讀 206,378評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異盖文,居然都是意外死亡嘱蛋,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,356評論 2 382
  • 文/潘曉璐 我一進店門五续,熙熙樓的掌柜王于貴愁眉苦臉地迎上來洒敏,“玉大人,你說我怎么就攤上這事疙驾⌒谆铮” “怎么了?”我有些...
    開封第一講書人閱讀 152,702評論 0 342
  • 文/不壞的土叔 我叫張陵它碎,是天一觀的道長函荣。 經(jīng)常有香客問我,道長扳肛,這世上最難降的妖魔是什么傻挂? 我笑而不...
    開封第一講書人閱讀 55,259評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮挖息,結(jié)果婚禮上金拒,老公的妹妹穿的比我還像新娘。我一直安慰自己套腹,他們只是感情好绪抛,可當(dāng)我...
    茶點故事閱讀 64,263評論 5 371
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著电禀,像睡著了一般幢码。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上鞭呕,一...
    開封第一講書人閱讀 49,036評論 1 285
  • 那天蛤育,我揣著相機與錄音宛官,去河邊找鬼。 笑死瓦糕,一個胖子當(dāng)著我的面吹牛底洗,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播咕娄,決...
    沈念sama閱讀 38,349評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼亥揖,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了圣勒?” 一聲冷哼從身側(cè)響起费变,我...
    開封第一講書人閱讀 36,979評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎圣贸,沒想到半個月后挚歧,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,469評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,938評論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了仅父。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,059評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡矮慕,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出啄骇,到底是詐尸還是另有隱情痴鳄,我是刑警寧澤,帶...
    沈念sama閱讀 33,703評論 4 323
  • 正文 年R本政府宣布缸夹,位于F島的核電站痪寻,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏明未。R本人自食惡果不足惜槽华,卻給世界環(huán)境...
    茶點故事閱讀 39,257評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望趟妥。 院中可真熱鬧猫态,春花似錦、人聲如沸披摄。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,262評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽疚膊。三九已至义辕,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間寓盗,已是汗流浹背灌砖。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工璧函, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人基显。 一個月前我還...
    沈念sama閱讀 45,501評論 2 354
  • 正文 我出身青樓蘸吓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親撩幽。 傳聞我的和親對象是個殘疾皇子库继,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,792評論 2 345

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