Objective-C語法之數(shù)組對象的那些事兒
使用數(shù)組對象創(chuàng)建的數(shù)組功能非常強大,在Java語言或者C語言中定義的數(shù)組必須滿足數(shù)組中的每一個元素必須是同樣的類型。而Objective-C語言可以在Array數(shù)組中放任意類型的數(shù)據(jù),值得注意的是只能放指向這個對象的指針,如果直接放int ,char,double 等等,是不行的.
1.不可變數(shù)組對象
使用NSArray關(guān)鍵字創(chuàng)建一個不可變的數(shù)組,一旦初始化完畢后這個數(shù)組的元素是不可以在動態(tài)的添加與刪除。
創(chuàng)建MyClass對象,將指向這個對象的指針也可以存入NSArray數(shù)組中,可見NSArray對象數(shù)組中可以儲存任意對象的數(shù)據(jù)。
[array count] : 得到這個對象數(shù)組的長度。
[array objectAtIndex 0]: 傳入數(shù)組腳標的id 得到數(shù)據(jù)對象。
[arrayWithObjects; ...] :向數(shù)組對象初始化賦值。這里可以寫任意對象的指針,結(jié)尾必須使用nil。標志結(jié)束~
使用for循環(huán)遍歷這個數(shù)組對象。
上面的for循環(huán)遍歷方法比較普遍,但是效率不好,而且安全性不高。Objective-C 提供了一種快速枚舉遍歷方法,推薦大家都使用這種方法來遍歷。
for(NSObject *object in array) : 遍歷array這個數(shù)組,每一次循環(huán)將數(shù)組中的元素賦值給 *object ,實現(xiàn)循環(huán)遍歷。
2.可變數(shù)組對象
[NSMutableArray arrayWithCapacity:10] :初始化可變數(shù)組對象的長度,如果后面代碼繼續(xù)添加數(shù)組超過長度10以后
NSMutableArray的長度會自動擴充,所以不用擔(dān)心數(shù)組越界。
[array addObject:...] : 向可變數(shù)組尾部添加數(shù)據(jù)對象。
[array addObjectsFromArray:..] :向可變數(shù)組尾部添加一個數(shù)組對象。
*)#>];
[array insertObject:@"插入一只小老虎" atIndex:1] :向可變數(shù)組中插入一個字符串對象,并且設(shè)定它的位置腳標索引為 1。
NSRange range = NSMakeRange(0,5); 設(shè)置一個范圍為 0 到 5 之間。
[array removeObject:myClass inRange:range] : 設(shè)置在一個范圍內(nèi)刪除數(shù)據(jù),如果這個范圍內(nèi)沒有刪除的這個對象則不會刪除任何東西。例子中因為myClass對象在 數(shù)組 0 到 5的范圍內(nèi),所以myClass就被刪除掉了。
[array removeObject:(id)] :無需考慮范圍,主要數(shù)組中存在這個對象就會直接被刪除。
[array removeObjectAtIndex:(NSUInteger)]:刪除數(shù)組中指定腳標索引的數(shù)據(jù)。
[array removeObjectIdenticalTo:(id)] : 刪除數(shù)組中指定元素
[array removeObjectIdenticalTo:(id) inRange:(NSRange)] : 在指定范圍內(nèi)刪除指定的元素。
[array removeObjectsInArray:(NSArray *)] :刪除一個數(shù)組的元素。
[array replaceObjectAtIndex 2 withObject:@"已經(jīng)修改了"]:替換數(shù)組腳標為2的數(shù)據(jù)。
感覺Objective-C 的對象數(shù)組真的很給力,善用數(shù)組對象處理數(shù)據(jù)也是個不錯的選擇噢 ,嘻嘻~~
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
