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(@"写入成功!");
}
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(@"写入成功!");
}
相关文章推荐
- People Tools catalog tables.
- UI设计培训之进入BAT公司的前提
- standardUserDefaults
- 尚品网愈发高调,“踩猫打狗”转型时尚轻奢跨境电商
- 鸟哥的Linux私房菜-学习笔记-概论
- Android RecyclerView 使用完全解析 体验艺术般的控件
- 使用谷歌Z生成条形码以及二维码
- 【C++】对cin输入字符的判断与分段函数的处理
- 数组陷阱
- Struts2中的OGNL详解
- 【IOS 开发学习总结-OC-61】IOS 的自动旋转
- 文章标题
- ARM64的启动过程之(三):为打开MMU而进行的CPU初始化
- 如何解析key为数字的string类型的Json数据
- mysql与Oracle的区别
- 最佳开源大数据工具-2015
- 学习指针引用数组
- 时尚垂直电商发展提速,剖析踩猫打狗背后的野心
- IOS开发笔记3-SCANF函数使用和表达式
- linux0.99网络模块-应用层 or 传输层读写