Go语言中定义函数使用func关键字

  1. func 函数名(参数)(返回值){
  2. 函数体
  3. }
  1. //函数定义
  2. func intSum(x int,y int) int {
  3. return x+y
  4. }
  5. func main() {
  6. sum := intSum(5, 10)
  7. fmt.Println(sum)
  8. }

1.函数的调用

  1. func sayHello() {
  2. fmt.Println("Hello World")
  3. }
  4. //函数调用
  5. func main() {
  6. sayHello()
  7. }

2.参数

2.1类型简写

  1. //类型简写
  2. func intSum(x,y int)int{
  3. return x+y
  4. }
  5. func main() {
  6. sum := intSum(4, 6)
  7. fmt.Println(sum)
  8. }

2.2可变参数

Go语言中的可变参数通过在参数名后加来标识
可变参数通常要作为函数的最后一个参数

  1. func intSum(x ...int)int{
  2. sum := 0
  3. for _, v := range x {
  4. sum = sum + v
  5. }
  6. return sum
  7. }
  8. func main() {
  9. sum := intSum(5,5,5)
  10. fmt.Println(sum)
  11. }
  1. func intSum(x int,y ...int)int{
  2. sum := x
  3. for _, v := range y {
  4. sum=sum+v
  5. }
  6. return sum
  7. }
  8. func main() {
  9. sum := intSum(5,5,5,5)
  10. fmt.Println(sum)
  11. }

3.返回值

3.1多返回值

Go语言中通过return关键字向外输出返回值

  1. //多返回值
  2. func calc(x,y int)(int,int){
  3. sum := x+y
  4. sub := x-y
  5. return sum,sub
  6. }
  7. func main() {
  8. sum, sub := calc(10, 5)
  9. fmt.Println(sum)
  10. fmt.Println(sub)
  11. }

3.2返回值命名

函数定义时可以给返回值命名,并在函数体中直接使用这些变量,最后通过return关键字返回。

  1. func calc(x,y int)(sum,sub int){
  2. sum = x+y
  3. sub = x-y
  4. return
  5. }
  6. func main() {
  7. sum, sub := calc(10, 5)
  8. fmt.Println(sum)
  9. fmt.Println(sub)
  10. }