iOS 函数式编程

特点:不同的东西进行组合、做完一件事 还能继续做另一件事

 1、以实现计算器为例

@interface JiSuanQiManger : NSObject
@property (nonatomic,assign) NSInteger rsult;
-(JiSuanQiManger *)jiSuan:(NSInteger (^)(NSInteger ))jisuan;
-(JiSuanQiManger *)log;
@end


.m文件 

#import "JiSuanQiManger.h"

@implementation JiSuanQiManger
-(JiSuanQiManger *)jiSuan:(NSInteger (^)(NSInteger ))jisuan{
    _rsult = jisuan(_rsult);
    return self;
}
-(JiSuanQiManger *)log{
    NSLog(@"计算结果:%zd",_rsult);
    return self;
}
@end


调用 
    JiSuanQiManger *jisuan = [[JiSuanQiManger alloc]init];
    [[jisuan jiSuan:^NSInteger(NSInteger result) {
        result+=4;
        result+=3;
        return result;
    }] log] ;

 

posted @ 2020-03-01 16:42  ZhangShengjie  阅读(143)  评论(0编辑  收藏  举报