苹果开发 笔记(65)遍历
2015-08-29 13:34
337 查看
看了面试题目,有时候发现越基础的东西越让人发现很多忽视的地方。例如@property 里面的几个属性,原子性和非原子性。copy 一般用在场合。这些都是考察的一些基础点。还有一些声明等等。数组的遍历,字典的搜索等。
这几天比较颓废,现在也看一下循环。简单一下练习找回一些感觉。
我将CFAbsoluteTimeGetCurrent 变成As3的getTimer 这样也好利于自己理解获取当前的时间点,算出一些运算的时间。
很奇怪的是,IOS 里面的 for in 的效率是非常高,在As3 里面 for in 效率是最低,所以说不同的语言环境效果不是一样,这是很依赖环境。所以对过去认识进行一点改变才会获得一些新认识。
NSArray 里面 enumerateObjectsUsingBlock block 方法 也可以作为遍历使用。
这几天比较颓废,现在也看一下循环。简单一下练习找回一些感觉。
我将CFAbsoluteTimeGetCurrent 变成As3的getTimer 这样也好利于自己理解获取当前的时间点,算出一些运算的时间。
很奇怪的是,IOS 里面的 for in 的效率是非常高,在As3 里面 for in 效率是最低,所以说不同的语言环境效果不是一样,这是很依赖环境。所以对过去认识进行一点改变才会获得一些新认识。
NSArray 里面 enumerateObjectsUsingBlock block 方法 也可以作为遍历使用。
[code]#import <Foundation/Foundation.h> #define getTimer() CFAbsoluteTimeGetCurrent() int main(int argc, const char * argv[]) { @autoreleasepool { // insert code here... NSLog(@"Hello, World!"); double startTime = getTimer(); NSArray *array = @[@"one" ,@"twon",@"three"]; for (NSString *str in array ) { NSLog(@"输出结果%@",str); } [array enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) { NSLog(@"---------%@",obj); }]; NSDictionary *dictionary = @{@"one":@100,@"two":@200,@"three":@300}; [dictionary enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) { NSLog(@"---------%@:%@",key,obj); }]; double endTime = getTimer(); NSLog(@"执行时间:%f",endTime - startTime); } return 0; }
相关文章推荐
- IOS6适配遇到的几个问题
- iOS的socket开发基础
- iOS 打包生成ipa文件(使用终端命令打包)
- 关于获得键盘高度的问题
- 使用CocoaPods配置第三方类库
- Nagios简单配置及原理
- ***iOS 项目的目录结构能看出你的开发经验
- iOS学习之CoreData多表关联使用
- iOS中ScrollView的属性和方法详解
- 48.iOS动画和理解position与anchorPoint
- IOS开发中@2x图片等适应不同分辨率手机
- ios远程证书的制作
- iOS第三管理工具pods
- iOS学习之CoreData模糊查找,分页查找,多模型文件处理
- iOS通知:NSNotificationCenter
- iOS之弹幕效果
- iOS CFNetwork Concepts CFNetwork概念 官方文档翻译(三)
- iOS 开发常见的错误提示信息
- ios常用到的第三方库
- iOS开发——源代码管理——svn 命令行下常用的几个命令