您的位置:首页 > 其它

OC学习笔记之NSArray

2015-10-21 20:33 323 查看
//通过多个对象创建数组。
NSArray *array = [[NSArrayalloc]initWithObjects:@"one",@"two",@"three",@"four",nil];
NSLog(@"%@",array);

//通过已有数组创建数组
NSArray *arr2 =[[NSArrayalloc]initWithArray:array];
NSLog(@"%@",arr2);

//通过类方法创建数组
NSArray *arr3 = [NSArrayarrayWithArray:arr2];
NSLog(@"%@",arr3);

NSArray *arr4 = [NSArrayarrayWithObjects:@"545",@"848",@"gff",nil];
NSLog(@"%@",arr4);

//xcode 5
以上的版本创建数组

NSArray *arr =@[@"周杰伦",@"汪峰",@"那英",@"哈林"];
NSLog(@"%@",arr);

/*[注]如果元素是中文的字符串对象的话,直接打印数组,没有办法显示中文,原因是XCode对中文的支持不是很好,我们可以通过遍历数组元素的方式打印含有中文数组元素*/

//遍历数组 .count获取数组元素的个数
for (
int i=0;i<arr.count;i++) {
//取出数组元素

// objectAtIndex
获取指定下标的数组元素

// NSString *string = [arr objectsAtIndexes:i];
NSString *string = arr[i];
NSLog(@"%@",string);
}

//快速枚举遍历数组元素
for (NSString *objin arr) {
NSLog(@"%@",obj);
}

//通过枚举器遍历数组
NSEnumerator *enu = [arr
objectEnumerator];
NSString *obj =nil;
while (obj = [enu
nextObject]) {
NSLog(@"%@",obj);
}

//通过枚举器,逆序打印
NSEnumerator *enu2 = [arr
reverseObjectEnumerator];
NSString *obj2 =
nil;
while (obj2 = [enu2
nextObject]) {
NSLog(@"%@",obj2);
}

//block
遍历 元素 下标
是否停止
[arrenumerateObjectsUsingBlock:^(id obj,NSUInteger idx,
BOOL *stop) {
if (idx==1)
{
*stop =YES;//可以控制何时停止遍历;
}

NSLog(@"%@,%lu",obj,idx);
}];

//写入文件

if ([arrwriteToFile:@"/Users/qianfeng/Desktop/资料夹/my
read/NSArray/NSArray/File"atomically:YES]) {
NSLog(@"写入成功!");
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: