pragma mark 可變數(shù)組NSMutableArray
pragma mark 概念
/**
可變數(shù)組 (NSMutableArray)
1. 添加
單個(gè) (addObject)
多個(gè) (addObjectsFromArray)
2.插入
將對(duì)象 插入到那個(gè)位置 (insertObject:atIndex)
插入 一組數(shù)據(jù) , 指定數(shù)據(jù)需要插入的位置,和插入多少個(gè) (insertObjects:atIndexes)
3. 刪除
刪除指定位置 (removeObjectAtIndex)
刪除所有 (removeAllObjects)
刪除最后一個(gè) (removeLastObject)
刪除某個(gè)對(duì)象 (removeObject)
4. 替換
使用那個(gè)索引 替換成那個(gè)對(duì)象 (replaceObjectAtIndex:withObject)
arr[index] = @"LYH";
5. 獲取
獲取 (objectAtIndex)
arr[index]
*/
pragma mark 代碼
#import <Foundation/Foundation.h>
#pragma mark 類(lèi)
#pragma mark main函數(shù)
int main(int argc, const char * argv[])
{
#pragma 可變數(shù)組NSMutableArray
#warning 1.可變數(shù)組NSMutableArray
// 創(chuàng)建一個(gè)空的數(shù)組
NSMutableArray *arrM = [NSMutableArray array];
// 1. 如何添加 單個(gè) () 多個(gè)
[arrM addObject:@"1"];
// NSLog(@"%@",arrM);
// 將所有的元素 取出來(lái) 放到 arrM中
// 并不是 將整個(gè)數(shù)組 作為一個(gè)元素 添加到arrM中
[arrM addObjectsFromArray:@[@"lyh",@"lys"]];
// 以下 是 將整個(gè)數(shù)組 作為一個(gè)元素 添加
// [arrM addObject:@[@"lyh",@"lys"]];
NSLog(@"%@",arrM);
// 2. 如何插入
// 將對(duì)象 插入到那個(gè)位置 (insertObject:atIndex)
// 插入 一組數(shù)據(jù) , 指定數(shù)據(jù)需要插入的位置,和插入多少個(gè) (insertObjects:atIndexes)
[arrM insertObject:@"hehe" atIndex:1];
NSLog(@"%@",arrM);
// location 從哪里開(kāi)始插入 length 是插入多少個(gè)
NSRange range = NSMakeRange(2, 2);
NSIndexSet *set = [NSIndexSet indexSetWithIndexesInRange:range];
// 插入 一組數(shù)據(jù) , 指定數(shù)據(jù)需要插入的位置,和插入多少個(gè)
[arrM insertObjects:@[@"A",@"C"] atIndexes:set];
NSLog(@"%@",arrM);
// 3. 如何刪除
// 刪除指定位置 (removeObjectAtIndex)
// 刪除所有 (removeAllObjects)
// 刪除最后一個(gè) (removeLastObject)
// 刪除某個(gè)對(duì)象 (removeObject)
[arrM removeObjectAtIndex:0];
NSLog(@"%@",arrM);
[arrM removeLastObject];
NSLog(@"%@",arrM);
[arrM removeObject:@"A"];
NSLog(@"%@",arrM);
// 4. 如何替換
// 使用那個(gè)索引 替換成那個(gè)對(duì)象 (replaceObjectAtIndex:withObject)
[arrM replaceObjectAtIndex:1 withObject:@"GG"];
NSLog(@"%@",arrM);
// 快捷替換
arrM[0] = @"LYH";
NSLog(@"%@",arrM);
// 5. 如何獲取
// 獲取 (objectAtIndex) 方式1
// arr[index] 方式2
NSLog(@"%@",[arrM objectAtIndex:0]);
NSLog(@"%@",arrM[1]);
#warning 2.注意點(diǎn)
// 不能 通過(guò)@[] 來(lái)創(chuàng)建一個(gè)可變數(shù)組, 因?yàn)锧[]創(chuàng)建出來(lái)的 是一個(gè)不可變的數(shù)組
// 如果 把 一個(gè)不可變數(shù)組 當(dāng)做成一個(gè)可變數(shù)組 來(lái)使用, 會(huì)引發(fā)一個(gè)運(yùn)行時(shí)的錯(cuò)誤
NSMutableArray *arrM1 = @[@"1",@"2"];
[arrM1 addObject:@"XXX"]; // 這里會(huì)崩潰
return 0;
}
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者