Swift4 学习之路,从入门语法 →进阶 →设计模式 →UIKit →高级 →实战主目录:点击这里
函数应该都不陌生,个人理解就是一个独立的代码块,用于独立运算或者独立处理某一件事情,函数的类型包含有参和无参 函数主要包含:函数声明 函数名 参数 返回值 以大括号中的函数体这几个部分,具体看一下
无参函数
一样的函数, 都是无参函数,返回值为空的样式可以以下二选其一
func exampleOfFunction() ->Void{
print("无参、无返回值 函数")
}
func exampleOfFunction(){
print("无参、无返回值 函数")
}
exampleOfFunction1() //调用
有参函数
正常的参数在函数中不能直接就该它的值,否则编译器会报错。
// 有参 无返回值函数
func exampleOfFunction2(paramet:String){
// paramet = "hello" 参数不能直接修改,编译会报错
print(paramet)
}
exampleOfFunction2(paramet:"无参、无返回值 函数") //调用
// 有参 有返回值函数
func exampleOfFunction(paramet:String) ->String{
let addString = " world"
return paramet+addString
}
exampleOfFunction(paramet: "hello")
在swift中 函数可以作为一个函数的参数或者返回值
func plus (a:Int,b:Int)-> Int{
return a+b
}
func mult (a:Int,b:Int)-> Int{
return a*b
}
func someFuncyion(parameter:(Int,Int) -> Int,a:Int,b:Int){
// parameter:(Int,Int) -> Int 本身是一个函数,两个入参和一个返回值
// 整体来看就是 someFuncyion 是一个有三个参数的无返回值函数 参数一是函数 参数二 int 参数三 int
print("运算结果 \(parameter(a,b))")
}
someFuncyion(parameter: plus, a: 3, b: 4)
someFuncyion(parameter: mult, a: 3, b: 4)
1.当不能确定调用函数的参数的具体数量时, 需使用可变参数
2.一个函数中只能有一个可变参数
func arithmeticMean(numbers:Double...)-> Double{
var total: Double = 0
for number in numbers{
total+=number
}
return total/Double(numbers.count)
}
print(arithmeticMean(numbers: 1,2,3))
print(arithmeticMean(numbers: 1,2,3,4,5))
上边说道通常函数中不能直接修改参数的值, 如果要修改? 那么必须在参数的类型前加关键字 "inout"。 称之为输入输出函数。 并且在调用的时候必须要使用一个&变量去掉用,不能使用常量或者字面量。因为这些量是不能被修改的
func iWantUpdateName(name: inout String){
name = "NBA"
print(name)
}
var strppp = "CBA"
iWantUpdateName(name:&strppp) // 调用的时候只能以一个变量去调用,应为要保证他可以被修改。 用其他的话是不能被修改的
输出: NBA