1.NSArray
//数组的创建和初始化
//nil:数组结束标志
//id:保存任意oc对象(数组中元素的类型可以各不相同)
NSArray *array = @[@"bei", @"jing", @"huan", @"ying", @"nin"];
//初始化时数组中的元素放到中括号中[], 输出的时候数组元素放在()
//一般初始化不可变数组(不需要写nil)
pragma mark 对象方法创建数组
NSArray *array1 = [[NSArray alloc] initWithArray:array];//用另一个数组初始化当前数组
NSArray *array2 = [[NSArray alloc] initWithObjects:@"bei", @"jing", @"huan", @"ying", @"nin", nil];
//nil方法中自动存在
pragma mark 类方法创建数组
NSArray *array3 = [NSArray arrayWithArray:array];
NSArray *array4 = [NSArray arrayWithObjects:@"bei", @"jing", @"huan", @"ying", @"nin", nil];
2.NSArray 操作
//返回数组个数
//- (NSUInteger)count;
//作用:返回数组中元素的个数//不包括nil
NSLog(@"%lu", [array count]);
//数组中元素
NSArray *array = [NSArray arrayWithObjects:@"bei", @"jing", @"huan", @"ying", @"nin", nil];
//- (id)objectAtIndex:(NSUInteger)index;
//作用:取出数组中的元素
NSLog(@"%@", [array objectAtIndex:0]);
//判断数组里是否包含相同的元素
//- (BOOL)containsObject:(id)anObject;
if ([array containsObject:@"hua"]) {
NSLog(@"包含该元素");
} else {
NSLog(@"不包含该元素");
}
//获得数组最后一个元素
[array lastObject]
//字符串切割,将切割的字符串,存到数组中
NSString *string = @"chen$chao$ni$hao$ma";
//- (NSArray *)componentsSeparatedByString:(NSString *)separator;
//作用:字符串的切割,将切割后的内容保存到数组中
NSArray *arrayFromString = [string componentsSeparatedByString:@"$"];
//作用:字符串集切割,遇到' '或'3'都切割
[arrayFromString componentsSepatatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@" 3"]];
NSLog(@"arrayFromString = %@", arrayFromString);
//- (NSString *)componentsJoinedByString:(NSString *)separator;
//作用:将数组中的元素进行拼接
NSString *stringFromArray = [arrayFromString componentsJoinedByString:@" "];
3.NSMutableArray :可变数组
//NSMutableArray创建
NSMutableArray *mutableArray = [[NSMutableArray alloc] init];
//创建空数组
NSMutableArray *mutableArray1 = [[NSMutableArray alloc] initWithCapacity:0];
NSMutableArray *mutableArray2 = [NSMutableArray arrayWithCapacity:0];
//数组(增)追加元素和数组
//- (void)addObject:(id)anObject;
//作用:数组末尾增加一个元素
[array addObject:@"bei"];//最常用
//- (void)addObjectsFromArray:(NSArray *)otherArray;
//作用:数组末尾追加一个数组
[array addObjectsFromArray:array1];
//- (void)insertObject:(id)anObject atIndex:(NSUInteger)index;
//作用:在数组中的指定位置处插入一个元素
[array insertObject:@"bian" atIndex:1];
//数组的删除操作
//- (void)removeObject:(id)anObject;
//作用:删除数组中指定的元素(有几个删几个)
[array removeObject:@"bei"];//最常用
//- (void)removeObjectAtIndex:(NSUInteger)index;
//作用:删除指定下表处的元素
[array removeObjectAtIndex:2];
//- (void)removeObjectsInRange:(NSRange)range;
//作用:删除指定范围内的元素
NSRange range = {0, 3};
[array removeObjectsInRange:range];
[array removeLastObject];//删除最后一个元素
[array removeAllObjects];//删除所有元素
//数组替换操作(修改)
//- (void)replaceObjectAtIndex:(NSUInteger)index withObject:(id)anObject;
//作用:替换数组中的指定元素
//index:下标
//anObject:替换的内容
[array replaceObjectAtIndex:0 withObject:@"dong"]
//- (void)exchangeObjectAtIndex:(NSUInteger)idx1 withObjectAtIndex:(NSUInteger)idx2;
//作用:交换数组中的两个元素
[array exchangeObjectAtIndex:0 withObjectAtIndex:3];
//数组修改元素(整个修改替换)
- (void)setArray:(NSArray *)otherArray;
网友评论