iOS中利用链式编程思想实现计算器

作者: 打电话记错号码的人 | 来源:发表于2016-07-27 12:00 被阅读360次

作品链接:http://www.jianshu.com/users/1e0f5e6f73f6/top_articles

1.声明加减乘除和结果的方法

@property (nonatomic, assign) int result;

- (PHCalculateManager *(^)(int))add;
- (PHCalculateManager *(^)(int))minus;
- (PHCalculateManager *(^)(int))multiply;
- (PHCalculateManager *(^)(int))divide;

2.实现加减乘除的方法

- (PHCalculateManager *(^)(int))add
{
    return ^(int value){
        _result += value;
        return self;
    };
}
- (PHCalculateManager *(^)(int))minus
{
    return ^(int value){
        _result -= value;
        return self;
    };
}

- (PHCalculateManager *(^)(int))multiply
{
    return ^(int value){
        _result *= value;
        return self;
    };

}

- (PHCalculateManager *(^)(int))divide
{
    return ^(int value){
        _result /= value;
        return self;
    };

}

3.创建计算管理者

  • 把所有的计算代码放在这里
+ (int)PH_makeCalculate:(void (^)(PHCalculateManager *))block
{
    // 创建计算管理者
    PHCalculateManager *calculateManager = [[PHCalculateManager alloc] init];
    // 执行计算
    block(calculateManager);

    return calculateManager.result;
}

4.调用计算管理者

- (void)viewDidLoad {
    [super viewDidLoad];
int result = [NSObject PH_makeCalculate:^(PHCalculateManager *calculateManager) {

        calculateManager.add(10).minus(2).multiply(5).divide(4);
    }];

    NSLog(@"%d",result);

}

相关文章

  • iOS中利用链式编程思想实现计算器

    作品链接:http://www.jianshu.com/users/1e0f5e6f73f6/top_articl...

  • iOS-链式编程思想

    在iOS中,链式编程虽然用的不太多,但是,在特定的应用环境下,利用block实现链式编程的话,会大大的提高编程效率...

  • iOS链式编程

    在iOS中,链式编程虽然用的不太多,但是,在特定的应用环境下,利用block实现链式编程的话,会大大的提高编程效率...

  • 工作iOS技术总结

    链式编程、函数式、面向接口编程思想 iOS 之ReactiveCocoa 链式编程2 WKWebView的缓存处理...

  • IOS_编程思想_链式编程练习

    在之前的两篇文章中已经简单的介绍了IOS的编程思想,那在此处写一个链式编程的联系来加深对链式编程思想的理解!!! ...

  • 链式编程思想

    链式编程思想 链式编程思想

  • iOS开发Masonry框架源码解析

    iOS开发Masonry框架源码解析 前言:这个框架编程思想主要包括链式编程 这是一个iOS在控件布局中的轻量级框...

  • iOS利用Block实现链式编程

    场景 实现连续加法运算 1 + 2 + 3 + 4.。。。 普通实现 -(NSInteger)addWithPar...

  • Masonry详解

    Masonry是一款强大iOS第三方约束类库。它的内部原理是什么呢!它充分的利用了链式编程思想和函数式编程思想进行...

  • RAC学习详解

    Block开发基础知识 链式编程思想简介 响应式编程思想简介 函数式编程思想简介 参考资料 iOS 关于MVC和M...

网友评论

本文标题:iOS中利用链式编程思想实现计算器

本文链接:https://www.haomeiwen.com/subject/bpeojttx.html