久久久精品一区ed2k-女人被男人叉到高潮的视频-中文字幕乱码一区久久麻豆樱花-俄罗斯熟妇真实视频

OC字典和集合的常用用法-創(chuàng)新互聯(lián)

首先說(shuō)幾個(gè)OC里快速生成對(duì)象的幾個(gè)方法(即語(yǔ)法糖):

專(zhuān)注于為中小企業(yè)提供成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)白云鄂免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上1000家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

(1) @ + 數(shù)字 即快速將基本數(shù)據(jù)類(lèi)型轉(zhuǎn)換為NSNumber類(lèi)型的對(duì)象,如:@20, (@后面直接跟了一個(gè)確切的數(shù)字) 如果是一個(gè)變量即 int a = 10 ,則為:@(a)

(2) 數(shù)組對(duì)象 = @ + [ ](中括號(hào)里的內(nèi)容時(shí)對(duì)象), 快速創(chuàng)建數(shù)組對(duì)象 例如:NSArray *arr = @[@"name",@"number",@22,@7]; 這樣創(chuàng)建的數(shù)組是不可改變的數(shù)組

(3) 數(shù)組名 + [下標(biāo)] 快速獲取數(shù)組下標(biāo)對(duì)應(yīng)的元素, 如: arr[1] 就是獲取數(shù)組arr中的第二個(gè)元素number

 一, 字典

字典: 也是一個(gè)大容器,用來(lái)存儲(chǔ)多個(gè)數(shù)據(jù),而且存儲(chǔ)的數(shù)據(jù)具有一一對(duì)應(yīng)關(guān)系,(使用key來(lái)標(biāo)識(shí)value值) ,字典里的key是唯一的,一個(gè)key只能對(duì)應(yīng)一個(gè)value,但是一個(gè)value可以對(duì)應(yīng)多個(gè)key.對(duì)于字典的一對(duì)鍵值對(duì)(即key-value)叫做字典的一個(gè)元素,也叫做一個(gè)條目,它存儲(chǔ)的內(nèi)容不限制對(duì)象類(lèi)型,但是只能用來(lái)存儲(chǔ)對(duì)象同時(shí)字典是無(wú)序的,

  (一), 不可改變字典  NSDictionary

這里以下的例子都以

NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:@"Lili",@"name",@20,@"height",@12,@"age", nil];

       NSLog(@"%@",dic); 為例,不再贅述

1,創(chuàng)建字典對(duì)象

       1),便利構(gòu)造器    dictionaryWithObjectsAndKeys:

       NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:@"Lili",@"name",@20,@"height",@12,@"age", nil];

       NSLog(@"%@",dic);

       2),初始化方法    initWithObjectsAndKeys:

       NSDictionary *dic1 = [[NSDictionary alloc] initWithObjectsAndKeys:@"Lili",@"name",@20,@"height",@12,@"age", nil];

       NSLog(@"%@",dic1);

2,求字典元素個(gè)數(shù) count 其實(shí) count 這個(gè)方法在數(shù)組里,在字典里,在集合里都有,并且都是用來(lái)計(jì)算相應(yīng)容器(數(shù)組,字典,集合等)的元素個(gè)數(shù)

       NSUInteger count = [dic count];

       NSLog(@"%lu",count);

3,獲取所有的key     allKeys

       NSArray *keys = [dic allKeys];

       NSLog(@"%@",keys);

 4,根據(jù)key獲取對(duì)應(yīng)的value   objectForKey: 返回值為字符串對(duì)象 這里objectForKey后面沒(méi)有加s 說(shuō)明只是取出其中的一個(gè)元素,而不是全部,即體現(xiàn)了OC里方法名的見(jiàn)名知意,我們?cè)趯W(xué)習(xí)過(guò)程中可以根據(jù)方法名大概猜測(cè)出方法的實(shí)現(xiàn)內(nèi)容

       NSString *name = [dic objectForKey:@"name"];

       NSLog(@"%@",name);

       NSNumber *age = [dic objectForKey:@"age"];

       NSLog(@"%@",age);

       NSNumber *height = [dic objectForKey:@"height"];

       NSLog(@"%@",height);

 下面一個(gè)例子是把字典里的key的對(duì)應(yīng)值都取出來(lái)存在一個(gè)數(shù)組里 allValues 返回值是數(shù)組對(duì)象

       NSArray *values = [dic allValues];

       NSLog(@"%@",values);

5,字典快速遍歷;

      forin在遍歷數(shù)組時(shí),遍歷的是數(shù)組中的每個(gè)元素, 在對(duì)字典快速遍歷時(shí),遍歷的是字典中的key,然后通過(guò)key獲取對(duì)應(yīng)的value值 因此forin 里type對(duì)應(yīng)的類(lèi)型是key對(duì)應(yīng)的對(duì)象類(lèi)型

       for (NSString *dic1 in dic) {

           //檢索到key時(shí),通過(guò)objectForKey:獲取對(duì)應(yīng)的value值

           NSLog(@"%@",[dic objectForKey:dic1]);

       }

(二),可改變字典       NSMutableDictionary

1,創(chuàng)建字典對(duì)象

       便利構(gòu)造器 dictionaryWithObjectsAndKeys:

       NSMutableDictionary *mudic =[NSMutableDictionary dictionaryWithObjectsAndKeys:@"Lili",@"name1",@"Frank",@"name2",@12,@"age1",@14,@"age2", nil];

2,求字典元素個(gè)數(shù) count

       NSLog(@"%lu",[mudic count]);

3,刪除元素 removeObjectForKey: 給定一個(gè)key值刪除對(duì)應(yīng)的value值,

                  removeAllObjects 刪除所有條目

       [mudic removeObjectForKey:@"name2"];

       NSLog(@"%@",mudic);

       [mudic removeAllObjects];

       NSLog(@"%@",mudic);

4,添加元素   setObject: forKey:

       [mudic setObject:@"Duke"forKey:@"name3"];

       NSLog(@"%@",mudic);

 5,修改key對(duì)應(yīng)的value  setObject: forKey: 跟添加元素是同一個(gè)方法

       在這里setObject:forKey: 根據(jù)指定的key查找是否有對(duì)應(yīng)的value如果沒(méi)有就添加進(jìn)去即添加元素,若存在該key對(duì)應(yīng)的value則將其修改為指定的value值,即修改對(duì)應(yīng)的value

       [mudic setObject:@"Frank"forKey:@"name3"];

       NSLog(@"%@",mudic);

     (三)NSSet不可變集合

集合也是一個(gè)大容器,具有確定性,唯一性,無(wú)序性   .里面可以存儲(chǔ)任何類(lèi)型的對(duì)象

1,創(chuàng)建一個(gè)集合對(duì)象

       (1)b便利構(gòu)造器  setWithObjects:

       NSSet *set1 = [NSSet setWithObjects:@"1",@"2",@"3",@"4",@"age1",@14,@"age2", nil];

       NSLog(@"%@",set1);

       (2)初始化方法 initWithObjects:

       set1 = [[NSSetalloc] initWithObjects:@"1",@"2",@"3",@"4",@"5",@"6", nil];

       NSLog(@"%@",set1);

2,獲取集合中的某個(gè)元素 anyObject 第一次隨機(jī)取出一個(gè)元素后,再多次取出,每次都和第一次取出的一樣

       NSString *set = [set1 anyObject];

       NSLog(@"%@",set);

       NSString *set5 = [set1 anyObject];

       NSLog(@"%@",set5);

       NSString *set2 = [set1 anyObject];

       NSLog(@"%@",set2);

       NSString *set3 = [set1 anyObject];

       NSLog(@"%@",set3);

       NSString *set4 = [set1 anyObject];

       NSLog(@"%@",set4);

3,獲取元素個(gè)數(shù) count

       NSLog(@"%lu",[set1 count]);

4,判斷集合中是否包含某個(gè)對(duì)象 containsObject:

       NSLog(@"%d",[set1 containsObject:@"1"]);

       (四),可改變集合  NSMutableSet

1,創(chuàng)建一個(gè)集合對(duì)象  setWithObjects:

       NSMutableSet * muset = [NSMutableSet setWithObjects:@"1",@"2",@"3",@"4",@"age1",@14,@"age2", nil];

1,添加元素   addObject:

       [muset addObject:@"88"];

       NSLog(@"%@",muset);

2,刪除元素  removeObject:

       [muset removeObject:@"88"];

       NSLog(@"%@",muset);

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線(xiàn),公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。

分享標(biāo)題:OC字典和集合的常用用法-創(chuàng)新互聯(lián)
本文地址:http://sd-ha.com/article20/shhco.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營(yíng)銷(xiāo)推廣、網(wǎng)站內(nèi)鏈動(dòng)態(tài)網(wǎng)站、品牌網(wǎng)站建設(shè)、網(wǎng)站建設(shè)、關(guān)鍵詞優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都app開(kāi)發(fā)公司