1:函式定義和使用
package main
import "fmt"
//func 函式名(引數列表)(返回值列表){
//程式碼體
//}
//函式定義 只能定義一次
//在整個專案中函式名是唯一的 不能重名
func add(s1 int, s2 int) {
sum := s1 + s2
fmt.Println(sum)
}
func main() {
//fmt.Println("你好")
//v := len("你好")
//fmt.Println(v)
a := 10
b := 20
//函式呼叫 函式可以多次呼叫
//在函式呼叫時引數為實際引數(實參)有具體的值 用來給形式引數(形參)傳遞資料
add(a, b)
add(1, 2)
}
2:普通引數列表
所謂的普通引數列表指的是,我們給函式傳遞的引數的個數都是確定好。基本語法如下:
程式碼在上面
3:不定引數列表
根據前面的講解,我們都知道了,在定義函式的時候根據需求指定引數的個數和型別,但是有時候如果無法確定引數的個數呢?
舉例說明:上一小節我們寫過一個求兩個整數之和的函式,但是在實際的開發中,也會經常遇到這樣的情況,就是專案經理(對整個專案的進度進行把控,對程式設計師進行管理的人員,稱為專案經理),要求你寫一個函式,實現整數的和。在這個要求中,專案經理並沒有說清楚到底是有幾個整數,那麼我們應該怎樣確定該函式的引數呢?就用接下來給大家講解的“不定引數列表”來解決這個問題
package main
import "fmt"
//...不定參 在函式呼叫時可以傳遞不定量(0-n)的引數
//不定參使用資料格式為切片
func sum(arr ...int) {
//arr是一個資料的集合
//fmt.Println(arr)
//計算字串個數
//len("你好")
//計算資料集合的個數
//count := len(arr)
//fmt.Println(count)
//通過arr[下標]可以找到具體資料的值
//下標是從0開始的 到len(arr)-1為最大值下標
//fmt.Println(arr[0])
//fmt.Println(arr[1])
//fmt.Println(arr[2])
//fmt.Println(arr[3])
sum := 0
//通過for迴圈遍歷集合中的資料
//for i := 0; i < len(arr); i++ {
// //fmt.Println(arr[i])
// sum += arr[i]
//}
//通過for迴圈遍歷集合中的資料
//i -> index 下標 v -> value 值
//_匿名變數 如果資料的值不需要接收 可以通過匿名變數來接收資料
for _, v := range arr {
//fmt.Println(i, v)
sum += v
}
fmt.Println(sum)
}
func main() {
//不定參函式呼叫
sum(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
sum(12, 21, 23, 32)
//fmt.Println 就是一個不定參的格式
fmt.Println("你好", 123, "再見")
}