Swift编程swift

Swift | 柯里化实现一个函数指定加数

2019-08-04  本文已影响1人  字符管理师

柯里化简介

柯里化指的是从一个多参数函数变成一连串单参数函数的变换

函数演示

func add(input: Int) -> (Int) -> Int {
    return { value in
        return input + value
    }
}

代码实现

let addTwo = add(input: 100)
let output = addTwo(8)

补充

  1. 这种方式是柯里化的一个说明
  2. 函数实现的效果就是每次你输入一个数都会帮你默认加8 ,如果后续你想改变只需要改变8这个就可以达到结果,不需要在函数中做操作

额外的演示

class BankCard {
    /// 余额
    var balance : Double = 0.0

    /// 存钱方法
    func deposit(amount: Double) {
        balance += amount
        print("balance = \(balance)")
    }
}
/// 正常的使用
let card = BankCard()
card.deposit(amount: 100)

let deposit : (BankCard)->(Double) ->() = BankCard.deposit

let depositIntoCard  = deposit(card)
depositIntoCard(100)
deposit(card)(88)
上一篇 下一篇

猜你喜欢

热点阅读