// // main.m // NSMutableArray ,可变数组 #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { // 创建一个空的数组 NSMutableArray *arrM = [NSMutableArray array]; NSLog(@"%@", arrM); // 如何添加 [arrM addObject:@"lnj"]; // 将指定数组中的元素都取出来, 放到arrM中 // 并不是将整个数组作为一个元素添加到arrM中 [arrM addObjectsFromArray:@[@"lmj", @"jjj"]]; // 注意: 以下是将整个数组作为一个元素添加 [arrM addObject:@[@"lmj1", @"jjj1"]]; NSLog(@"%@", arrM);//(lnj,lmj,jjj,(lmj1,jjj1)) // 如何插入 [arrM insertObject:@"xcq" atIndex:1]; NSLog(@"%@", arrM);//(lnj,xcq,lmj,jjj,(lmj1,jjj1)) NSRange range = NSMakeRange(2, 2); NSIndexSet *set = [NSIndexSet indexSetWithIndexesInRange:range]; // 插入一组数据, 指定数组需要插入的位置, 和插入多少个 [arrM insertObjects:@[@"A", @"B"] atIndexes:set]; NSLog(@"%@", arrM);//(lnj,xcq,A,B,lmj,jjj,(lmj1,jjj1)) // 如何删除 [arrM removeObjectAtIndex:0];//(xcq,A,B,lmj,jjj,(lmj1,jjj1)) NSLog(@"%@", arrM); [arrM removeLastObject]; NSLog(@"%@", arrM);//(xcq,A,B,lmj,jjj) [arrM removeObject:@"A"];//(xcq,B,lmj,jjj) NSLog(@"%@", arrM); // 如何替换 [arrM replaceObjectAtIndex:1 withObject:@"M"]; NSLog(@"%@", arrM);//(xcq,M,lmj,jjj) // 如何获取 NSLog(@"%@", [arrM objectAtIndex:0]);//xcq NSLog(@"%@", arrM[0]);//xcq // 替换 arrM[0] = @"ZS"; NSLog(@"%@", arrM);//(ZS,M,lmj,jjj) // 注意: 不能通过@[]来创建一个可变数组, 因为@[]创建出来的是一个不可变的数组 // 如果把一个不可变数组当做一个可变数组来使用, 会引发一个运行时的错误 NSMutableArray *arrM1 = @[@"lnj", @"lmj"];//(lnj,lmj) [arrM1 addObject:@"JJJ"];//报错 return 0; }
时间: 2024-10-12 20:18:26