昨天我们学完了函式的基础用法以及讲解,今天要写的是进阶用法。
会这样分两天是因为我觉得有一点难,可以给大家消化一下。
func ac (x: Int) 是定义函式的写法;func 函式名称(参数名称: 参数型别)
这边很容易搞混,连我自己都搞混了........这边要特别注意!
var ainput = 3
func ac(x: Int) -> Int{
var k = x * 2
if k < 10{
k = ac(x: k)
return k
}else{
return k
}
}
let a = ac(x: ainput)
print("Answer is",a)
先let a = ac(x: ainput) 所以就会去call ac函式,接着因为乘2 k然然未达10,所以回去再call一次ac。
var ainput = 3
func ac(x: Int) -> Int{
var k = x * 2
if k < 10{
k = ac2(x: k)
return k
}else{
return k
}
}
func ac2(x: Int) -> Int{
let k = x * 2
return k
}
let a = ac(x: ainput)
print("Answer is",a)
这边一样先call ac 但没超过10 所以回去call ac2 接着会回传值回传ac ,接着return回let a 那一行,就结束了。
var ainput = 3
func ac(x: Int) {
var k = x * 2
if k < 10{
print("<10")
}else{
print(">10")
}
}
let a = ac(x: ainput)
这边你可以直接看let那一行,这时传入什麽值也不重要,因为也没有回传值,但这边你可以看到就是一个呼叫function的动作,判断是否大於10。
swift 中的func是可以设定为预设参数值的,也就是说你就不需要有输入值了,每次呼叫函式都会有固定的输入值。
func ac(x: Int = 1) {
print(x)
}
ac()
这样子就会印出a了
我们有时候输入参数值时,并非每次都输入一个值,偶尔也会输入两个值等等,这时候就要使用多参数值输入。
func ac(n1: Int = 1 , n2 : Int = 2) {
print(n1 + n2)
}
ac()
当然,三个也没有问题
func ac(n1: Int = 1 , n2 : Int = 2 , n3: Int = 100) {
print(n1 + n2 + n3)
}
ac()
今天讲的主要还是比较基本的函数使用的方法,还有很多我没有讲到的,有兴趣建议多学一点,不过我讲的基本上也都可以用了,也就是说剩下的建议你可以要用再去查就好。
本文参考资料:本站大佬 通灵亡
在本地化 (localize) 专案时,我们可能会遇到需要处理日期时间显示的问题,因为日期时间的显示...
Self-hosted runners 介绍 在前面几篇文章实作 GitHub Action Wor...
LastActivityView 今天来认识这个看就知道是看这台电脑上一步做了啥动作的工具! 调查的...
Conditional Rendering 在写元件时最常见的就是会使用 v-if 来动态插入和删除...
数学函数 ceil(): 进上取整 echo ceil(9.99999); // 10 floor(...