OC数组中,只能存放对象,不能存放基本类型。
nil作为数组结束的标志。
打印数组,可以直接给数组名就行。
NSArray数组的初始化:
1、
//NSArray(不可变变数组) //OC当中的数组,只能存放对象,不能存放基本类型 //nil作为数组结束标志。 NSArray *arr1 = [[NSArray alloc]initWithObjects:@"1",@"2",nil,@"3", nil]; NSLog(@"%@",arr1);/* 2015-04-16 16:08:15.311 OCLesson4_NSString[1997:107757] ( 1, 2 ) */ |
当数组中出现nil的时候,就不再执行nil后的东西。
便利构造器:
NSArray *arr2 = [NSArray arrayWithObjects:@"1",@"a",@"vv",@"4",nil]; NSLog(@"%@",arr2);/*2015-04-16 16:14:00.422 OCLesson4_NSString[2047:109668] ( 1, a, vv, 4 )*/ |
2、
//用数组初始化数组 NSArray *arr3 = [[NSArray alloc]initWithObjects:arr1, nil]; NSLog(@"%@",arr3);/*2015-04-16 16:12:30.843 OCLesson4_NSString[2026:109024] ( ( 1, 2 ) )*/ |
便利构造器:
NSArray *arr4 = [NSArray arrayWithArray:arr3]; NSLog(@"%@",arr4);/*2015-04-16 16:13:32.998 OCLesson4_NSString[2037:109429] ( ( 1, 2 ) )*/ |
3、
//初始化方式 NSArray *arr6 = @[@"1",@"2",@"c"]; NSLog(@"%@",arr6);/*2015-04-16 16:23:18.965 OCLesson4_NSString[2112:112846] ( 1, 2, c )*/ |
NSArray数组的使用:
1、数组中元素个数
//使用 NSArray *arr5 = [[NSArray alloc]initWithObjects:@"1",@"2",@"3", nil]; //数组中元素个数 [arr5 count]; |
2、
//数组取值 NSLog(@"%@",[arr5 objectAtIndex:2]);//2015-04-16 16:18:00.790 OCLesson4_NSString[2074:111107] 3 |
3、
//给一个元素,可以返回该元素的下标 NSUInteger i1 = [arr5 indexOfObject:@"2"]; NSLog(@"%lu",i1);//2015-04-16 16:19:47.168 OCLesson4_NSString[2087:111900] 1 |
4、
//第一种取值方式:与C语言一样arr6[0] NSLog(@"%@",arr6[0]);//2015-04-16 16:23:48.083 OCLesson4_NSString[2123:113173] 1 //第二种取值方式:indexOfObject方法 NSLog(@"%ld",[arr6 indexOfObject:@"c"]);//2015-04-16 16:25:05.481 OCLesson4_NSString[2144:113715] 2 |