因?yàn)镺C中的字典比較簡單,掌握基本的用法就可以實(shí)現(xiàn)大部分的開發(fā),所以本文的NSDictionary和NSMutableDictionary的方法介紹篇幅很短,全部的源代碼如下:
目前成都創(chuàng)新互聯(lián)已為超過千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)頁空間、網(wǎng)站托管、服務(wù)器托管、企業(yè)網(wǎng)站設(shè)計(jì)、仁壽網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { //1.創(chuàng)建一個(gè)NSDictionary對象,用來存放name:zhangsan sex:girl age:23 NSDictionary *dic1 = [[NSDictionary alloc] initWithObjectsAndKeys:@"zhangsan", @"name", @"girl", @"sex", [NSNumber numberWithInteger:23], @"age", nil]; NSLog(@"%@", dic1); //2.計(jì)算字典元素個(gè)數(shù) NSUInteger count = [dic1 count]; NSLog(@"count = %lu", count); //3.獲取字典的所有key NSArray *keys = [dic1 allKeys]; NSLog(@"%@", keys); //4.獲取所有的value NSArray *values = [dic1 allValues]; NSLog(@"%@", values); //5.根據(jù)key獲得對應(yīng)的value NSNumber *age = [dic1 objectForKey:@"age"]; NSLog(@"age = %@", age); NSString *name = [dic1 objectForKey:@"name"]; NSLog(@"name : %@", name); //6.快速遍歷(快速枚舉) //對于字典快速遍歷時(shí),獲取到的是key,然后獲取到key之后通過objectForKey:獲取key對應(yīng)的value for (NSString *key in dic1) { NSLog(@"%@ = %@", key, [dic1 objectForKey:key]); } //可變字典:NSMutableDictionary //1.創(chuàng)建一個(gè)NSMutableDictionary對象,使用initWithObjectsAndKeys初始化方法 NSMutableDictionary *dic2 = [[NSMutableDictionary alloc] initWithObjectsAndKeys:@"lisi", @"name", @"girl", @"sex", [NSNumber numberWithInteger:20], @"age", nil]; //2.添加一個(gè)條目(字典里面添加元素) //給dic2添加score:90.5條目 [dic2 setObject:[NSNumber numberWithFloat:90.5] forKey:@"score"]; NSLog(@"%@", dic2); //setObject:forKey:當(dāng)指定的key在字典中存在時(shí),則修改key所對應(yīng)的value,如果給定的key不是字典中的key,則向字典中添加一個(gè)條目:key以及key對應(yīng)的value //3.修改條目 //將dic2的年齡改為30. [dic2 setObject:[NSNumber numberWithInteger:30] forKey:@"age"]; NSLog(@"%@", dic2); //4.刪除條目 //(1)將dic2的年齡移除掉 [dic2 removeObjectForKey:@"age"]; NSLog(@"dic2 : %@", dic2); //(2)刪除dic2中的所有條目 [dic2 removeAllObjects]; NSLog(@"dic2 : %@", dic2); //將dic2的內(nèi)容復(fù)制到dic3中 NSMutableDictionary *dic3 = [[NSMutableDictionary alloc] init]; [dic3 setDictionary:dic2]; NSLog(@"dic3 : %@", dic3); //字典的特點(diǎn) //1.字典是一個(gè)無序的集合; //2.字典元素是通過一對鍵值對,也就是一個(gè)條目,一個(gè)key對應(yīng)一個(gè)value,但是一個(gè)value可以對應(yīng)多個(gè)key; //3.字典取元素,通過key來得到所對應(yīng)的value; } return 0; }
代碼中的注釋已經(jīng)解釋的很清楚了,可以根據(jù)自己的需要查找相應(yīng)的方法,在下面一定要多練習(xí)。需要注意的是一個(gè)key只能對應(yīng)一個(gè)value,而多個(gè)key可以對應(yīng)一個(gè)value。
網(wǎng)頁名稱:iOS開發(fā)OC基礎(chǔ):OC字典NSDictionary以及NSMutableDictionary基本方法的使用
鏈接地址:http://chinadenli.net/article14/giigde.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、定制開發(fā)、企業(yè)建站、做網(wǎng)站、自適應(yīng)網(wǎng)站、響應(yīng)式網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)