swift 学习笔记之在柯里化(Currying)

来源:互联网 发布:咸阳广电网络营业时间 编辑:程序博客网 时间:2024/05/18 03:00

    有时候我们看到的方法中有很多组的参数,可能会让大家觉得疑惑,其实是因为这个方法使用了柯里化。Swift里可以对方法进行柯里化,也就说有多个参数的方法可以接受第一个参数,然后变成一个接受余下参数并且返回结果的新方法,举个例子:

func twoTemp(a:Int)(b:Int) -> Int{return a + b}

这个方法有两组参数,可以只传第一个参数:

let oneTemp = twoTemp(1)

这里的oneTemp是一个新的方法,类型如图所示


这个新方法接受剩下的b作为参数,返回一个Int,现在给这个方法传入一个参数试试:

var result = oneTemp(b: 2)

在调用这个方法的时候需要显示地写出参数。现在result的结果是3。

柯里化的好处是提供了一个模板,可以写出具有很高复用性的代码,比如上例可以指定一个运算数建立一套方法。


1 0
原创粉丝点击