4.使用函数

4.使用函数-四曲博客
4.使用函数
此内容为免费阅读,请登录后查看
0
免费阅读

函数是什么

函数的结构

func addUp (x int ,y int) int{
    return x+y
}

返回单个值

package main

import "fmt"

func isEven (i int) bool{
    return i%2 == 0
}

func main(){
    fmt.Printf("%v\n",isEven(1))
    fmt.Printf("%v\n",isEven(2))
}

// false
// true

返回多个值

func getPrinze() (int,string){
    i := 2
    s := "goldfish"
    return i,s
}

定义不定参数函数

package main

import "fmt"

//计算任意参数的和
func sumNumbers(numbers...int) int{
    total := 0
    for _, number := range numbers{
        total += number
    }
    return total
}

func main(){
    fmt.Println(sumNumbers(2,3,4,5,6))
}

// 20
  • numbers是一个存储所有参数的切片

使用具名返回值

具名返回值让函数能够在返回前将值赋给具名变量,这有助于提升函数的可读性,使其更加明确,要使用具名返回值,可在函数签名的返回值部分指定变量名

func sayHi() (x,y string){
    x :="hello"
    y :="world"
    return
}
package main

import "fmt"

func sayHi() (x,y string){
    x ="hello"
    y ="world"
    return
}

func main(){
    fmt.Println(sayHi())
}

//hello world

将函数作为值传递

GO将函数视为一种类型,因此可以将函数赋值给变量,以后再通过变量来调用他们

package main

import "fmt"

func main(){
    fn := func(){
        fmt.Println("hello")
    }

    fn()
}

//hello

还可以将函数作为值来传递

package main

import "fmt"

func another(f func() string) string{
    return f()
}

func main(){
    fn := func() string{
        return  "hello"
    }

    fmt.Println(another(fn))
}

//hello
© 版权声明
THE END
喜欢就支持以下吧
点赞0 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容