欸!?这个不是在 hello world 的时候讲过了ㄇ?!
对。
其实函式还是有其他东西可以讲解的,程序就是很多function去组合起来,把function搞清楚了,第一份工作肯定会超过一个月。赞。
有人说 function 在一些程序语言中是一等公民( first class citizen ),一等公民听起来好像很霸道很高级,但一开始听到一等公民这个词我也是塞爆了问号,後来翻阅网路跟书籍後,才稍微了解, 简单来说,一等公民可以做为函数的引数,可以最为函是返回值,也可以赋值给变数。
不过今天呢,我也是打算从最一开始讲起,因为我还不会甚麽太艰深的东西。
欸嘿。
应该都可以啦,但我都叫他 function。
你可以将一个或是多个表达式归入封装成一个 function ,你可以在需要那个程序的想法与逻辑的时候去调用那个 function ,你就不用每次都要打类似的程序码啦。
建立一个 function 先用 fun 去宣告,後面接 function 名字,定义传入参数的型别(如果有的话),跟定义他回传的输出型别,大括号里就是放你要写的程序码。
fun generateAnswerString(): String {
val answerString = if(count == 42){
"宾果答对了!是42!"
}else{
"不对欸不对欸"
}
return answerString
}
上面的function name 是 generateAnswerString。这个 function 不接受传入参数,输出的结果是 String 的型别。 那要调用这个 function 的话要输入以下程序:
generateAnswerString()
那要让函数可以接受输入参数,可以这样打:
fun generateAnswerString(countThreshold: Int): String {
val answerString = if(count == countThreshold){
"宾果答对了!是42!"
}else{
"不对欸不对欸"
}
return answerString
}
上面的范例中,generateAnswerString( ) 接受一个叫做 countThreshold 的 Int 类型的参数,在 generateAnswerString 这个 function 里面利用参数的名称来去使用。
要调用这个 function 的话,就必须在() 中添加一个数值。
val answerString = generateAnswerString(42)
这样就可以啦。
上面范例的 generateAnswerString() 是一个简单的函数,在程序中是先宣告一个 answerString 再将後面 if-else 产生的结果存入 answerString 里面,最後再回传 answerString。
那不如我们直接回传 if-else 产生的结果!
fun generateAnswerString(countThreshold: Int): String {
return if(count == countThreshold){
"宾果答对了!是42!"
}else{
"不对欸不对欸"
}
又更简洁了。
也是可以把 return 替换成 "=" :
fun generateAnswerString(countThreshold: Int): String = if(count == countThreshold){
"宾果答对了!是42!"
}else{
"不对欸不对欸"
}
基础的函式就先到这边,
下一篇见写写打家打家摆掰。
>>: Day27 javascript HTML DOM简单介绍
前言 对 TabPy 有一定程度的认识之後,便能开始学习 TabPy 安装与使用,这篇文章会分享如何...
全文同步於个人 Docusaurus Blog 本章的需求,解决首页进入前,如果有特定频道可以选择...
环境 Windows 10 21H1 Visual Studio 2019 前情提要 在上一篇【Da...
After the previous 2 articles of CSS basic introdu...
k8s - 洗掉 kubernetes 环境重新来过 参考资料 参考资料:在 Ubuntu 上重新安...