数组 - OC

数组的添加

NSArray *array1 = [NSArray arrayWithObjects:@"one",@"two",nil];
//给数组添加一个元素,需要接受该方法的返回值
array1 = [array1 arrayByAddingObject:@"three"];
//给数组添加多个元素
array1 = [array1 arrayByAddingObjectsFromArray:@[@"three",@"foure",@"five",@"six"]];

数组的提取

 NSArray *subArray1 = [array1 subarrayWithRange:NSMakeRange(2, 3)];

可变数组的创建

//可变数组继承于不可变数组
//NSMutableArray
//创建可变数组对象,不可变数组中的方法,可变数组对象都可以调用
//对于可变数组对象,可以直接添加元素,修改元素,删除元素
//数组中的元素不能为 nil
//1.可变数组的创建
NSMutableArray *array = [[NSMutableArray alloc] initWithObjects:@"one",@"two",@"three", nil];
//初始化指定容量大小的可变数组对象
NSMutableArray *array1 = [[NSMutableArray alloc] initWithCapacity:20];//20这个还需要确认下
//类方法创建制定容量大小的可变数组对象
NSMutableArray *array2 = [NSMutableArray arrayWithCapacity:20];
//向可变数组中添加元素
[array addObject:@"four"];
    
//把传入数组中的所有元素添加到可变数组中
[array addObjectsFromArray:@[@"five",@"six",@"seven"]];

//在指定位置增加数组元素
[array insertObject:@"hello" atIndex:3];

//在指定下标的多个位置添加数组元素 {1,3,5,6}
NSMutableIndexSet *mulset = [NSMutableIndexSet indexSetWithIndex:1];
[mulset addIndex:3];
[mulset addIndexesInRange:NSMakeRange(5, 2)];
[array insertObjects:@[@"baidu",@"hello",@"google",@"cool"] atIndexes:mulset];
    
//修改(重置)数组元素
[array setArray:@[@"hello",@"baidu",@"hao123",@"haha"]];

//替换数组中的元素
[array replaceObjectAtIndex:2 withObject:@"perfect"];
//替换下标集合位置的数组元素
NSIndexSet *index = [NSIndexSet indexSetWithIndexesInRange:NSMakeRange(2, 2)];
[array replaceObjectsAtIndexes:index withObjects:@[@"beautify",@"handsome"]];
    
//交换数组中的元素
[array exchangeObjectAtIndex:1 withObjectAtIndex:3];
    
//替换制定范围的数组元素
[array replaceObjectsInRange:NSMakeRange(1, 2) withObjectsFromArray:@[@"one",@"two",@"three",@"four"]];
    
//删除数组中的元素
[array addObject:@"one"];
[array removeObject:@"one"];
    
//删除指定下标位置的元素
[array removeObjectAtIndex:2];
    
//删除数组中所有的元素
//删除数组中最后的一个元素
//[array removeLastObject];
//[array removeAllObjects];
//删除指定范围内的出现的数组元素
[array addObject:@"hello"];
[array insertObject:@"hello" atIndex:2];
[array removeObject:@"hello" inRange:NSMakeRange(2, 3)];
    
//删除所有在传入数组中出现的元素
[array removeObjectsInArray:@[@"hello",@"world"]];

你可能感兴趣的:(数组 - OC)