oc随笔五:NSArray
#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { //NSArray的初始化以及常用数组操作方法简单归纳 //不可变数组 //数组的元素只能是对象,如果是int和float的话,就用NSNumber转换一下才能用 //初始化的几种方式,可以一个元素、多个元素、从已有组复制、从文件、网址等 NSArray *arr1 = [NSArray arrayWithObject:@"hello"]; for (id a in arr1) { NSLog(@"%@",a); } //向数组对象初始化赋值,这里可以写任意对象的指针,结尾必须使用nil NSArray *arr2 = [NSArray arrayWithObjects:@"hello",@"world", nil]; for (id b in arr2) { NSLog(@"%@",b); } //定义指定类型的数组 NSString *str[3]; NSNumber *num[3]; //初始化数组元素赋值 str[0] = @"hello"; str[1] = @"world"; str[2] = @"!"; num[0] = [[NSNumber alloc] initWithInt:1]; num[1] = [[NSNumber alloc] initWithInt:2]; num[2] = [[NSNumber alloc] initWithInt:3]; NSArray *arr3 = [NSArray arrayWithObjects:str count:3]; NSArray *arr4 = [NSArray arrayWithObjects:num count:3]; //遍历数组方法一 for (id strr in arr3) { NSLog(@"%@",strr); } //遍历数组方法二 for (int i = 0; i < [arr4 count]; i++) { NSLog(@"%@",[arr4 objectAtIndex:i]); } //复制数组 NSArray *arr5 = [NSArray arrayWithArray:arr4]; for (NSNumber *c in arr5) { NSLog(@"%@",c); } //给数组增加新元素(对象) NSArray *newArr5 = [arr5 arrayByAddingObject:@"Augus"]; for (int i = 0 ; i < [newArr5 count]; i++) { if (i == [newArr5 count] - 1) { NSLog(@"%@",[newArr5 objectAtIndex:i]); } } //把数组里元素利用连接符连接成字符串 NSString *strNew = [arr5 componentsJoinedByString:@"-"]; NSLog(@"%@",strNew); //查询数组中是否包含某一元素,YES和NO BOOL isContain = [arr3 containsObject:@"hello"]; NSLog(@"%d",isContain); //查询并返回位置,如没有则为NSNotFound NSInteger index = [arr3 indexOfObject:@"!"]; NSString *indexF = [NSString stringWithFormat:@"%ld",index]; NSInteger indexN = [indexF integerValue];//类型转换 NSLog(@"%ld",indexN); //获取最后一个元素 NSString *lastEle = [arr3 lastObject]; NSLog(@"%@",lastEle); //可变数组,5个元素 NSMutableArray *mutArr = [[NSMutableArray alloc] initWithCapacity:5]; //添加一个元素 [mutArr addObject:@"hello"]; [mutArr addObject:[NSNumber numberWithInt:66]]; [mutArr addObject:@"Augus"]; [mutArr addObject:[NSNumber numberWithDouble:19.9]]; //指定位置插入一个元素 [mutArr insertObject:@"world" atIndex:1]; //移除数组的元素,按名称、按序号等 NSLog(@"%@",mutArr); [mutArr removeLastObject]; NSLog(@"%@",mutArr); //替换元素 [mutArr replaceObjectAtIndex:2 withObject:@"!"]; NSLog(@"%@",mutArr); //把一个数组添加到另一个里,实际上就是把数组里的元素都添加进去了 [mutArr addObjectsFromArray:arr4]; NSLog(@"%@",mutArr); NSLog(@"%ld",[mutArr count]); } return 0; }
坚持分享,改变自我!