可變陣列的操作插入刪除
1.新增物件到陣列中
NSMutableArray *arr = [NSMutableArray arrayWithObjects:
@”one”, @”two”, @”three”, @”four”, @”five”, @”six”, nil];
NSMutableArray *arr = [NS]
[arr addObject:@”five”];
2.在指定位置新增物件
[arr insertObject:@”ten” atIndex:3];
3.刪除最後一個物件
[arr removeLastObject];
4.替換指定位置
[arr replaceObjectAtIndex:3 withObject:@”FIVE”];
5.建立記憶體
NSMutableArray *arr1 = [NSMutableArray arrayWithCapacity:20];
6.將一個數組新增到另外一個數組中
[arr addObjectsFromArray:@[@”seven”, @”eight”]];
7.交換陣列元素的位置
[arr exchangeObjcetAtIndex: 3 withObjectAtIndex: 5];
8.刪除指定範圍的物件
[arr removeObject:@”three”];
[arr removeObject:@”FIVE” inRange:NSMakeRange(1,5)];
9.刪除陣列中的指定元素
[arr removeObjectsInArray:
@[@”one”, @”two”]];
10.用一個數組指定範圍的元素代替另外一個數組中的元素
[arr replaceObjectsInRange:NSMakeRange(0,3)
withObjectsFromArray:@[@”one”, @”two”, @”three”]];
11.修改陣列
[arr setArray:@[@”Four”, @”Five”, @”Six”]];
12.在指定位置新增連續的陣列元素
[arr insertObjects:@[@”dog”,@”cat”, @”elephant”]] atIndexes:
[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(2, 3)];
注:NSMakeRange(2,3)是指從陣列下標為2的位置開始,向後連續新增3個元素(新增元素的個數必須與insertObjects後的元素個數相對應)
13.刪除指定範圍的元素
[arr removeObjectsAtIndexes:
[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(1, 2)]];
14.在指定位置新增指定元素
NSMutableIndexSet *indexset = [NSMutableIndexSet indexSet];
[indexset addIndex:1];
[indexset addIndex:3];
[indexset addIndex:4];
[arr replaceObjectsAtIndexes:indexset
withObjects:@[@”hello”, @”jian”, @”shu”]];
//一.陣列不能int ,char,double等基本資料型別不能直接儲存,需要通過轉換成物件才能加入陣列。
/*
1、NSArray 不可變陣列
[array count](array.count) : 陣列的長度。
[array objectAtIndex 0]: 傳入陣列腳標的id 得到資料物件。
[arrayWithObjects; …] :向陣列物件初始化賦值。這裡可以寫任意物件的指標,結尾必須使用nil。
*/
NSArray *array = [[NSArray alloc] initWithObjects:@"a",@"haha",@"傻逼",@"二貨", nil];
NSLog(@"列印結果:%@",[array objectAtIndex:2]);
//列印結果:列印結果:傻逼
//二.可變陣列的操作
//1.在陣列中插入一個元素 NSMutableArray *muArray = [[NSMutableArray alloc] init]; NSObject *obj = [[NSObject alloc] init]; [muArray addObject:@"物件1a"]; [muArray addObject:@"物件2b"]; [muArray addObject:@"物件3c"]; [muArray addObject:@"物件4d"]; [muArray addObject:@"物件1a"]; [muArray addObject:obj]; [muArray insertObject:@"kiven Dourntarnt" atIndex:1]; NSLog(@"muArray = %@",muArray); //2.刪除陣列中元素 NSString *str1 = @"傻逼一號"; NSString *str2 = @"傻逼二號"; NSString *str3 = @"傻逼一號"; NSString *str4 = @"傻逼三號"; NSMutableArray *muArray2 = [[NSMutableArray alloc] init]; [muArray2 addObject:str1]; [muArray2 addObject:str2]; [muArray2 addObject:str3]; [muArray2 addObject:str4];
// [muArray2 removeObject:str1];
// [muArray2 removeObjectIdenticalTo:str3];
//3.替換陣列某一個位置的元素 [muArray2 replaceObjectAtIndex:1 withObject:@"牛逼一號"]; //4.刪除一定範圍內的陣列元素 [muArray2 removeObjectIdenticalTo:str1 inRange:NSMakeRange(0, 2)]; for (NSString *string in muArray2) { NSLog(@"jieguo = %@",string); }