NSArray
NSArray的实例是无法改变的,一旦NSArray实例被创建后,就无法添加或删除数组里的指针,也无法改变数组的指针顺序。
-
创建方法:
//创建对象实例
NSDate now = [NSDate date];
NSDate tomorrow = [now dateByAddingTimeInterval:24.06060];
NSDate yesterday = [now dateByAddingTimeInterval:-24.060*60];
//创建NSArray实例
NSArray *datelist = @[now,tomorrow,yesterday];
//访问NSArray实例
NSLog(@"%@\n",datelist[0]);
NSLog(@"%@\n",datelist[1]);
NSLog(@"%@\n",datelist[2]);
NSLog(@"%lu\n",[datelist count]);
```
与NSString类似,NSArray也可以用字面量语法创建实例。
数组的内容写在方括号里,使用逗号分隔,前方带有@符号,不必另外发生创建实例的消息。
-
遍历访问NSArray:
NSDate now = [NSDate date];
NSDate tomorrow = [now dateByAddingTimeInterval:24.06060];
NSDate yesterday = [now dateByAddingTimeInterval:-24.060*60];
NSArray *datelist = @[now,tomorrow,yesterday];
NSLog(@"%@\n",datelist[0]);
NSLog(@"%@\n",datelist[1]);
NSLog(@"%@\n",datelist[2]);
//遍历数组
NSLog(@"%lu\n",[datelist count]);
NSInteger datecout = [datelist count];
for (int i = 0 ; i < datecout; i++) {
NSDate *d = datelist[i];
NSLog(@"Here is a date: %@",d);
}
//快速枚举
for (NSDate *d in datelist) {
NSLog(@"Here is a date: %@",d);
}
```
NSMutableArray
NSMutableArray实例和NSArray实例类似,但是可以添加、删除、或对指针重新进行排序
-
添加删除:
//创建空数组 NSMutableArray *dateList = [NSMutableArray array]; //将now指针加入新创建的数组 [dateList addObject:now]; //将yesterday指针插入数组的起始位置 [dateList insertObject:yesterday atIndex:0]; //删除可以使用removeObject:atIndex:方法
使用快速枚举遍历NSMutableArray时,不能在枚举过程中增加或删除数组中的指针,如果遍历时需要添加或删除指针,则需要使用标准的for循环。