OC--block
来源:互联网 发布:虚拟桌面软件 编辑:程序博客网 时间:2024/04/29 04:06
block的四种形式
//1.无参数,无返回值 void(^block)() = ^(){ //函数大括号里的代码段 NSLog(@"房子真贵!"); }; //block的使用 block(); //block自己不会执行,必须调用才会执行block大括号里的代码段
//2.有参数,无返回值 void(^block)( int , int ) = ^(int a ,int b){ int max = a > b ? a : b ; NSLog(@"%@",max); }; //调用 block(10 ,20 ); //void (^)(int ,int )是block的类型,他的名是block,我们也通过名进行调用 void(^block)(NSString *) = ^(NSString *str){ NSLog(@"%@",str); }; block(@"你好,今天"); //当参数是一个数组,对数组进行遍历 void(^block)(NSArray *) = ^(NSArray *arr){ for (NSString *str in arr){ NSLog(@"%@",str); } }; block(@[@"1",@"2",@"3"]);
//3.有返回值,无参数 //有返回值在函数段的最后要加上return int (^block)() = ^(){ return 100; }; //block调用的时候没有参数也要写上括号 NSLog(@"%d",block());
//4,有参数,有返回值 NSString *(^block)(NSArray *,NSInteger) = ^(NSArray *arr,NSInteger index){ return arr[index]; }; NSLog(@"%@",block(@[@"1",@"2",@"3",],2)); NSInteger ^(block)(NSString *) = ^(NSString * str){ return str.integerValue; }; NSLog(@"%ld",block(@"1234p123"));//只能打出1234
//参数日期的字符串,返回NSDate类型的日期对象 NSDate *(^block)(NSString *) = ^(NSString *date){ NSDateFormatter * formatter = [[NSDateFormatter alloc]init]; [formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"]; return [formatter dateFromString:date]; }; NSLog(@"%@",block(@"2015-07-28 12:12:12"));//block的函数段中更多使用参数,而返回值更多是调用一方使用
0 0
- 【OC】Block
- OC block
- OC--block
- OC - Block
- OC --- block
- OC-BLOCK
- oc Block
- OC-Block
- oc-Block
- OC--block
- oc中的block,认识block
- oc block的使用
- OC语法之Block
- OC之【block】
- OC-Block使用
- 5、OC Block
- OC基础—block
- OC -- block的用法
- 仰视源码,实现memset
- 面试总结之Java基础(未完工)
- 如何删除Xcode中安装的插件
- Bootstrap组件之按钮组
- 久违的数据库左连接
- OC--block
- Android中客户端请求服务器端的方式讲解(一)附源码
- 黑马程序员——java中String、StringBuffer、StringBuilder简单见解
- 【天池竞赛系列】阿里移动推荐算法思路解析
- mac的shell神插件zsh
- 包管理rpm与yum
- HDU 5316 Magician(2015 Multi-University Training Contest 3 1001)
- KMP算法原理
- 【暑假测试2】C HDU 1283 最简单的计算机(水)