NSMutableArray
这个数组是一个可变数组,和不可变数组不同的是,这个可以动态添加数据元素。
ArrayCreate();
这样输出的话,就会有三个元素了。
NSMutableArray *array=[NSMutableArray arrayWithObject:@"1"]; //添加元素 [array addObject:@"2"]; [array addObject:@"3"]; NSLog(@"%@",array);
删除元素对象
//删除对象 [array removeObject:@"2"];
删除最后一个元素
//删除最后一个元素 [array removeLastObject];
删除全部元素
//删除全部元素 [array removeAllObjects];
arraymemory
void arrayMemory(){ NSMutableArray *array=[NSMutableArray array]; Student *stu=[Student studentWithAge:10]; Student *stu2=[Student studentWithAge:20]; Student *stu3=[Student studentWithAge:30]; //添加元素的时候会做一次retain操作,计数器+1 [array addObject:stu]; // NSLog(@"stu:%zi",[stu retainCount]); //对被删除的元素做一次release操作,计数器-1 [array removeObject:stu]; // NSLog(@"stu:%zi",[stu retainCount]); //当数组被释放的时候,会对所有的元素都做一次release操作 }
替换元素
void arrayReplace(){ NSMutableArray *array=[NSMutableArray arrayWithObjects:@"1",@"2",@"3",nil]; [array replaceObjectAtIndex:1 withObject:@"4"]; NSLog(@"%@",array); }
排序方法
//排序方法 void arraySort(){ NSMutableArray *array=[NSMutableArray arrayWithObjects:@"1",@"3",@"2",nil]; //因为这个是可变数组,所以不需要返回值。 [array sortUsingSelector:@selector(compare:)]; NSLog(@"%@",array); }