NSArray基本用法
2015-11-16 22:35
323 查看
#import <Foundation/Foundation.h> @interface Person: NSObject @end @implementation Person -(NSString*) description { return @"this is description."; } @end int main(int argc, const char * argv[]) { @autoreleasepool { /* 数组可以包括任意类型 */ Person *p = [[Person alloc] init]; NSArray *arr1 = [[NSArray alloc] initWithObjects: @"One String", @"Two", @"Three", p, nil]; /* 数组中的每个对象实际是该对象的地址 */ /* NSLOG打印时,调用的是对象的description方法,字符串返回本身,对象为多个C类型字符串则返回时包含双引号 */ NSLog(@"arr1-%@", arr1); /* 利用已知数组初始化新数组 */ //NSArray *arr2 = [[NSArray alloc] initWithArray: arr1]; /* 利用已知数组初始化时的地址深拷贝 */ //NSArray *arr3 = [[NSArray alloc] initWithArray: arr1 copyItems: YES]; /* 使用枚举器遍历数组 */ NSEnumerator *enumarator = [arr1 objectEnumerator]; id anObject; while (anObject = [enumarator nextObject]) { NSLog(@"arr1 object-%@", anObject); } /* 快速遍历法 */ for (anObject in arr1) { NSLog(@"arr1 object--%@", anObject); } /* i遍历法 */ NSInteger i = 0; for ( ; i < [arr1 count]; i++) { NSLog(@"arr1 object---%@", [arr1 objectAtIndex:i]); } } return 0; }
输出结果:
<pre name="code" class="objc">2015-11-16 22:29:55.553 TestNSData[633:23869] arr1-( "One String", Two, Three, "this is description." ) 2015-11-16 22:29:55.558 TestNSData[633:23869] arr1 object-One String 2015-11-16 22:29:55.559 TestNSData[633:23869] arr1 object-Two 2015-11-16 22:29:55.559 TestNSData[633:23869] arr1 object-Three 2015-11-16 22:29:55.559 TestNSData[633:23869] arr1 object-this is description. 2015-11-16 22:29:55.559 TestNSData[633:23869] arr1 object--One String 2015-11-16 22:29:55.559 TestNSData[633:23869] arr1 object--Two 2015-11-16 22:29:55.559 TestNSData[633:23869] arr1 object--Three 2015-11-16 22:29:55.560 TestNSData[633:23869] arr1 object--this is description. 2015-11-16 22:29:55.560 TestNSData[633:23869] arr1 object---One String 2015-11-16 22:29:55.560 TestNSData[633:23869] arr1 object---Two 2015-11-16 22:29:55.560 TestNSData[633:23869] arr1 object---Three 2015-11-16 22:29:55.560 TestNSData[633:23869] arr1 object---this is description.
相关文章推荐
- Windows服务器远程桌面不能复制粘贴的解决方法
- iOS - NSDateFormatter 日期 和 字符串
- 存储过程和函数
- iOS中MVVM的架构设计
- MySQL重置root用户密码的方法
- 1037 Magic Coupon
- SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property.....
- UnityEditor 用Gizmos画出类似NGUI,UIPanel的矩形框
- 项目管理(一)任务分配
- 遍历二叉树的非递归实现
- 三栏布局(两边固定,中间自适应)
- Python特殊语法:filter、map、reduce、lambda
- 集合划分问题(一)
- 【大话GSM】MS计算寻呼信道、寻呼子信道以及确定在何时监听
- UI基础-设计模式、手势识别器
- 1036 Boys vs Girls
- Ubuntu 之 grub 引导方法
- c#下crystalreport自定义纸张报表打印
- 数据挖掘之权重计算(PageRank)
- HTTP2 学习