#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { //NSMutableArray 可變數組 繼承與 不可變NSArray //NSMutableArray能夠用NSArray 的全部方法 //建立一個可變數組對象 NSMutableArray *arr = [[NSMutableArray alloc] initWithObjects:@"c",@"c",@"oc",@"ui",@"net", nil]; //增add /insert 刪remove 改 replace exchange [arr addObject:@"qqqqqq"];//給數組增長元素 NSLog(@"before:%@",arr); //在末尾增長一個元素 //[arr addObject:@"project"]; //在指定位置插入 //[arr insertObject:@"project" atIndex:1]; //[arr removeAllObjects];//刪除全部 //刪除最後 //[arr removeLastObject]; //刪除指定的索引的 //[arr removeObjectAtIndex:0]; //刪除指定元素 有幾個刪幾個 //[arr removeObject:@"c"]; //替換 //[arr replaceObjectAtIndex:0 withObject:@"C"]; [arr exchangeObjectAtIndex:0 withObjectAtIndex:3]; NSLog(@"after:%@",arr); //可變空間 都會隨着數據的增長而增長 減小而減小 //快速枚舉的時候 只能 讀數組元素 不能改變數組 /* 快速枚舉的時候,這時會有一個枚舉器 和 當前數組創建一個關聯,經過這個關聯來遍歷數組的,遍歷時有個修改監視器(迭代器),監視這數組是否被修改了,若是一旦修改當即crash 崩潰掉 */ for (NSString *str in arr) { //[arr exchangeObjectAtIndex:3 withObjectAtIndex:4]; //NSLog(@"%@",[arr objectAtIndex:0]); } } return 0; }