关闭

Swift基本使用-函数和闭包(三)

335人阅读 评论(0) 收藏 举报
分类:

声明函数和其他脚本语言有相似的地方,比较明显的地方是声明函数的关键字

//python
def functionName(arg1, arg2) //函数名-参数表
    return value //返回值类型
//Js
function functionName(arg1, arg2) //函数名-参数表
{
    retrun value; //返回值
}
//swift
func functionName(arg1: String, arg2: String) -> String {
    return "\(arg1) and \(arg2)"
}
functionName("See", "Ya")

swift也出现了Python中的组元,可以通过一个组元返回多个值。

func getPersonInfo()-> (String, String) {
    return ("name", "address")
}
getPersonInfo()

传递可变参数,函数以数组的形式获取参数

func alert(messages: String...) -> String {
    var string: String? = "";
    for message in messages {
        string?.extend(message)
    }
    return string!
}
alert("hello","swift")

swift中函数可以嵌套,被嵌套的函数可以访问外部函数的变量。可以通过函数的潜逃来重构过长或者太复杂的函数。

//求平均值
func average(values: Double...) -> Double {
    assert(values.count != 0, "参数不可以为空")//除数不可以为零
    var count: Double = 0
    func add(subValue: Double){
        count += subValue
    }
    for subValue in values {
        add(subValue)
    }
    return (count / Double(values.count))
}
average(10.0, 20.0)
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    我的新浪
    个人资料
    • 访问:226332次
    • 积分:3449
    • 等级:
    • 排名:第9645名
    • 原创:87篇
    • 转载:131篇
    • 译文:0篇
    • 评论:23条