在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
这一节将会提到Swift中其他的关于函数的应用,这些内容包括有: 默认参数值和可变参数值、常量参数、返回函数类型和函数嵌套: 一、默认参数值和可变参数值 对默认参数值是指在函数的声明中就已经定义了参数的初值,比如: func sayHelloTo(name:String,greeting:String = “Hi”, punctuation:String = “!”){
}
在调用的时候可以是:
sayHelloTo(name:“PlayGround”, punctuation :“!!!”, greeting :“Hi”)
因为对有默认参数的函数来说,有默认参数值的参数是可以调换顺序的,但是不建议这样使用。print函数就是有分割符和结束符初始值的函数。 对变长的参数类型的函数来说, func mean(numbers : Double ...)-> Double { for number in numbers { sum+=number } return sum/Double(numbers.count) } 调用可以是: mean(2) 也可以是 mean(2,3,4,5,6) 但是一个函数只可以有一个变长的参数。
二、常量参数 与Java和C/C++不同,Swift不可以在函数中改变参数的值,因为传入参数的值的类型声明是let,好的函数会尽量避免需要改变函数参数的值。 但是如果要改变参数的值,需要这样来声明: func toBinary(var num:Int)-> String { return num/2 } 将类型声明为var, 但是这样的改变只是在函数的内部改变,但是在函数的外面是不改变的, 这是因为这种方式是按值出传入的,不是引用传入,只是在函数的内部进行了copy 如果需要痛殴函数改变外部参数的值,需要添加inout func swapInt(inout a :Int, inout b : Int){ (a,b) = (b,a) }
三、返回函数类型 这个也很简单,返回的类型是函数就好了: func tire1 (weight : Int)-> Int { } func tire2 (weight : Int ) ->Int { } func choose (weight : Int) -> (Int) -> Int { return weight>10 ? tire1(weight) : tire2(weight) }
四、函数的嵌套 func feeByPrice(price : Int,weight:Int)->Int {
func choose (weight : Int) -> (Int) -> Int {
return weight>10 ? tire1(weight) : tire2(weight)
}
|
请发表评论