//函数
//swift中的函数是以func开头的
//1.无参无返回函数 类型 () -> () 注意:通常后面的 ->()可以省略不写
func goToWorking (){
print("我想去上班")
}
goToWorking()
//2.有参无返回 类型(参数名: 参数类型) -> ()
func whatMan(name: String){
print("我的名字叫\(name)")
}
whatMan(name: "小明")
//swift如果没有定义外部参数名m,那么swift默认会创建一个和内部参数名一样的外部参数名
//多参无返回 (外部参数名 内部参数名: 参数类型, 外部参数名 内部参数名: 参数类型) -> ()
func driectionMan(name aName:String, age aAge: Int) {
print("我女朋友的名字叫:\(aName),今年\(aAge)岁")
}
driectionMan(name: "迪丽热巴", age: 26)
//无参有返回函数 类型 () -> (返回值类型)
func theManHowOld() -> (Int){
return 20
}
let age = theManHowOld()
print("那个男人的年龄是:\(age)岁")
//当有多个返回值是用元组接收 类型 () -> (返回值类型, 返回值类型) //返回类型也可以加上参数名
func myGrilFriend() -> (name: String,age: Int){
return ("刘亦菲",20)
}
let yuanzu = myGrilFriend()
print(yuanzu.name)
//有参有返回 类型 (参数名字: 参数类型) -> (返回类型)
func myFaverationGril(name: String) -> (Int){
if name == "迪丽热巴" {
return 18
}
return 30
}
let girlAge = myFaverationGril(name: "刘亦菲")
print(girlAge)
//忽略swiftn默认的外部参数名 用_
//有参有返回 类型 (_ 参数名字: 参数类型) -> (返回类型)
func myFaverationGril1(_ name: String) -> (Int){
if name == "迪丽热巴" {
return 18
}
return 30
}
myFaverationGril1("迪丽热巴")
//默认参数 默然参数一般放在参数的最后一个,在类型的后面直接加 = 默认值,调用的时候可以选择性的传值
func myFaverationGril2(name: String,age: Int = 18) -> (Int){
if name == "迪丽热巴" {
return 18
}
return 30
}
myFaverationGril2(name: "章子怡")
myFaverationGril2(name: "刘涛", age: 46)
//变参函数.指的是参数不确定的函数,一般参数传的时候个数不确定m,在函数内部使用的swift默认用数组接收
//表示形式为在参数类型后面加...
func myFaverationGril3(name: String...)
{
for str in name {
print("这个女明星的名字叫:\(str)")
}
}
myFaverationGril3(name: "刘亦菲","迪丽热巴","江疏影")
myFaverationGril3(name: "刘涛")
//当在函数里面改变外部传入的的值时,用 inout修饰, inout加在参数类型前面
//如果不加inout,swift中函数参数默认是常量参数,是不可以改变的
func changeValue(num: inout Int){
num += 1
}
var num = 10
changeValue(num: &num)
print(num)
网友评论