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] ;
原文地址:https://www.cnblogs.com/ZhangShengjie/p/12390532.html