数组遍历的简单基准测试
来源:互联网 发布:玉观音知乎 编辑:程序博客网 时间:2024/06/05 07:32
NSMutableArray * arr = [NSMutableArray array]; for (int i = 0; i < 1000000; i++) { [arr addObject:@(i)]; } __block long sum = 0L; unsigned long count = [arr count]; NSDate * startDate = [NSDate date]; for (int i = 0; i < count; i++) { sum += [arr[i] intValue]; } NSLog(@"for:%.fms", ceil(fabs([startDate timeIntervalSinceNow] * 1000))); sum = 0L; startDate = [NSDate date]; for (NSNumber * num in arr) { sum += [num intValue]; } NSLog(@"for_in:%.fms", ceil(fabs([startDate timeIntervalSinceNow] * 1000))); sum = 0L; startDate = [NSDate date]; NSEnumerator * enumerator = [arr objectEnumerator]; NSNumber * num; while (num = [enumerator nextObject]) { sum += [num intValue]; } NSLog(@"enum:%.fms", ceil(fabs([startDate timeIntervalSinceNow] * 1000))); sum = 0L; startDate = [NSDate date]; [arr enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) { sum += [obj intValue]; }]; NSLog(@"enum using block:%.fms", ceil(fabs([startDate timeIntervalSinceNow] * 1000)));
输出结果
for:85ms for_in:43ms enum:93ms enum using block:150ms
0 0
- 数组遍历的简单基准测试
- 健壮的 Java 基准测试
- Hadoop 集群的基准测试
- Hadoop 集群的基准测试
- ReadyBoost--Robbie 的基准测试
- 健壮的 Java 基准测试
- CI的基准测试类
- JMH工具进行基准测试简单使用
- 基准测试的定义(性能测试)
- 基准测试
- 衡量服务器性能的基准测试
- Google 分析的基准化测试
- CPython 和IronPython的基准测试
- Hadoop安装后的集群基准测试
- Hadoop安装后的集群基准测试
- octane:新的javascript基准测试
- Hadoop的基准测试工具使用
- 数据库基准测试的目的和作用
- linux 文件显示日期 年月日时分秒
- [水题]hdu 2084
- Maven的生命周期和插件
- NYOJ 112 指数运算
- AHU_ACM_2014(个人积分赛第三场)
- 数组遍历的简单基准测试
- Oracle连接不上:ORA-12154:TNS无法解析指定的连接标识符
- 设计模式之Composite组合模式
- HttpClient认证机制
- DroidBox简介
- 入门HTML之表格入门基本属性
- js获取浏览器基本信息
- Eclipse和MinGW开发C/C++
- Understanding the Empty Base Optimization