链式编程.加减乘除 .无限点

经常用到的延时

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.0*NSEC_PER_SEC)),dispatch_get_main_queue(), ^{

[b_self.navigationControllerpopViewControllerAnimated:YES];

});


知识点,block 的几种用法,

1 可以当属性  (返回值为UIcolor  block属性的名称为backcolorBlcok,参数UIcolor类型)

 @property (nonatomic,strong) UIColor*(^backcolorBlcok)(UIColor *color);

2 可以当参数(方法的返回值为int  ,block的名为Algorithmblock block返回值为空)

+(int)YJ_CalculateAboveIsFar:(void(^)(Algorithm* algorithm))Algorithmblock;

3 可以当返回值(返回值为是一个block  blcok返回值为Algorithm 有一个float的参数)

- (Algorithm *(^)(float))division;


做一个加减乘除的Demo

创一个NSobject的管理类(NSObject+management),用来管理方法的调用

创一个工具类(Algorithm),用来做加减乘除的运算;

调用这个分类的方法, 我们可以得到算法类的对像 algorithm,这样就可以无限点,

链式编程.加减乘除 .无限点_第1张图片

分类中 创建算法类,然后调用这个实现,

链式编程.加减乘除 .无限点_第2张图片
算法类里面有+-*/四种算法, 每种算法,都返回一个block,这个block的返回值是本类,_results是用来作算法值的保存.
链式编程.加减乘除 .无限点_第3张图片

你可能感兴趣的:(链式编程.加减乘除 .无限点)