OC語言day08-09可變字典NSMutableDictionary

pragma mark NSMutableDictionary

pragma mark 概念

/**

 概念: 《字典存儲的都是鍵值對 都是通過某個 鍵  找到 對應(yīng)的 值》
 
 NSMutableDictionary
 @"值":@"鍵"
 @"lyh":@"name"
 // 鍵值對 通過鍵(name) 找到 對應(yīng)的值(lyh)
 
 1.創(chuàng)建 (dictionary)
 
 2.添加 (setObject:值 forKey:鍵)
   添加一個字典 (setValuesForKeysWithDictionary:字典)
 
 3.獲取 (objectForKey:鍵)
        dict[@"鍵"];
 
 4.刪除
    刪除一個 (removeObjectForKey)
    刪除多個 (removeObjectsForKeys)
 
 5.修改 (setObject:值 forKey:鍵) // 添加同名的key 就是修改了
 
 ?? 注意點(diǎn)
1. 不能使用@{}來創(chuàng)建一個可變的字典
2. 如果是不可變字典, 那么key不能相同
如果是不可變的字典, 出現(xiàn)了同名的key,那么后面的key對應(yīng)的值 不會被保存
如果是在可變的字典中, 那么后面的
 
 #pragma mark 字典(NSDictionary)和數(shù)組(NSArray) 的區(qū)別
 NSArray 是有序的
 NSDictionary 是無序的
 
 NSArray 是通過下標(biāo)訪問元素
 NSDictionary 是通過key訪問元素
 
#pragma mark 創(chuàng)建 和 訪問
 array
 創(chuàng)建
 @[@"lyh",@"lys"]; (返回的是一個不可變數(shù)組)
 訪問
 id a = array[1];
 賦值
 array[1] = @"lyh";
 
 dict
 創(chuàng)建
 @{@"name":@"lyh",@"age":@"22"};
 訪問
 id a = dict[@"name"];
 賦值
 dict[@"name"] = @"lyh";

 */

pragma mark 代碼

#import <Foundation/Foundation.h>
#pragma mark 類

#pragma mark main函數(shù)
int main(int argc, const char * argv[])
{
#pragma mark NSMutableDictionary
    
#warning 1.創(chuàng)建
    NSMutableDictionary *dictM = [NSMutableDictionary dictionary];
    NSLog(@"dic %@",dictM);
#warning 2.如何添加
    [dictM setObject:@"lyh" forKey:@"name"];
    NSLog(@"dic %@",dictM);
    // 會將傳入
    [dictM setValuesForKeysWithDictionary:@{@"age":@"20",@"height":@"1.71"}];
    NSLog(@"dic %@",dictM);
    
#warning 3.如何獲取
//    NSLog(@"dic %@",[dictM objectForKey:@"name"]);
    NSLog(@"dic %@",dictM[@"name"]);

    
#warning 4.如何刪除
    // 刪除單個
    [dictM removeObjectForKey:@"name"];
    NSLog(@"dic %@",dictM);
    // 刪除多個
//    [dictM removeObjectsForKeys:@[@"age",@"height"]];
//    NSLog(@"dic %@",dictM);


#warning 5.如何修改
    // 如果利用setObject 方法給同名的key賦值,那么新值會覆蓋舊值
    
    [dictM setObject:@"180" forKey:@"age"];
    NSLog(@"dic %@",dictM);
    

#warning ??注意點(diǎn)
    // 1. 不能使用@{}來創(chuàng)建一個可變的字典
//    NSMutableDictionary *dictM2 = @{@"name":@"lyh"};
//    [dictM2 setObject:@"20" forKey:@"age"];
    
    // 2. 如果是不可變字典, 那么key不能相同
    // 如果是不可變的字典, 出現(xiàn)了同名的key,那么后面的key對應(yīng)的值 不會被保存
    // 如果是在可變的字典中, 那么后面的

    NSDictionary *dictM3 = @{@"name":@"lyh",@"name":@"lys"};
    NSLog(@"dictM3 %@",dictM3);

    
    // 可變字典重名
    NSMutableDictionary *dictM4 = [NSMutableDictionary dictionaryWithObjects:@[@"lyh",@"lys"] forKeys:@[@"name",@"name"]];
    NSLog(@"dictM4 %@",dictM4);

    
#pragma mark 字典(NSDictionary)和數(shù)組(NSArray) 的區(qū)別
    /**
     NSArray 是有序的 
     NSDictionary 是無序的
     
     NSArray 是通過下標(biāo)訪問元素
     NSDictionary 是通過key訪問元素
     
     */
#pragma mark 創(chuàng)建 和 訪問
    /**
     array 
     創(chuàng)建
     @[@"lyh",@"lys"]; (返回的是一個不可變數(shù)組)
     訪問
     id a = array[1];
     賦值
     array[1] = @"lyh";
     
     dict
     創(chuàng)建
     @{@"name":@"lyh",@"age":@"22"};
     訪問
     id a = dict[@"name"];
     賦值
     dict[@"name"] = @"lyh";
     */
    return 0;
}


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌中符,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,635評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)惭聂,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,543評論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來相恃,“玉大人辜纲,你說我怎么就攤上這事±鼓停” “怎么了耕腾?”我有些...
    開封第一講書人閱讀 168,083評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長杀糯。 經(jīng)常有香客問我扫俺,道長,這世上最難降的妖魔是什么火脉? 我笑而不...
    開封第一講書人閱讀 59,640評論 1 296
  • 正文 為了忘掉前任牵舵,我火速辦了婚禮柒啤,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘畸颅。我一直安慰自己担巩,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,640評論 6 397
  • 文/花漫 我一把揭開白布没炒。 她就那樣靜靜地躺著涛癌,像睡著了一般。 火紅的嫁衣襯著肌膚如雪送火。 梳的紋絲不亂的頭發(fā)上拳话,一...
    開封第一講書人閱讀 52,262評論 1 308
  • 那天,我揣著相機(jī)與錄音种吸,去河邊找鬼弃衍。 笑死,一個胖子當(dāng)著我的面吹牛坚俗,可吹牛的內(nèi)容都是我干的镜盯。 我是一名探鬼主播,決...
    沈念sama閱讀 40,833評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼猖败,長吁一口氣:“原來是場噩夢啊……” “哼速缆!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起恩闻,我...
    開封第一講書人閱讀 39,736評論 0 276
  • 序言:老撾萬榮一對情侶失蹤艺糜,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后幢尚,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體破停,經(jīng)...
    沈念sama閱讀 46,280評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,369評論 3 340
  • 正文 我和宋清朗相戀三年侠草,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了辱挥。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片犁嗅。...
    茶點(diǎn)故事閱讀 40,503評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡边涕,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出褂微,到底是詐尸還是另有隱情功蜓,我是刑警寧澤,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布宠蚂,位于F島的核電站式撼,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏求厕。R本人自食惡果不足惜著隆,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,870評論 3 333
  • 文/蒙蒙 一扰楼、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧美浦,春花似錦弦赖、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,340評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至流酬,卻和暖如春币厕,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背芽腾。 一陣腳步聲響...
    開封第一講書人閱讀 33,460評論 1 272
  • 我被黑心中介騙來泰國打工旦装, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人摊滔。 一個月前我還...
    沈念sama閱讀 48,909評論 3 376
  • 正文 我出身青樓同辣,卻偏偏與公主長得像,于是被迫代替她去往敵國和親惭载。 傳聞我的和親對象是個殘疾皇子旱函,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,512評論 2 359

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