首页 > 编程笔记 > Go语言笔记 阅读:6

Go语言函数的定义和调用(附带实例)

在 Go 语言中,函数是实现某个特定功能的代码段。如果一段程序代码具有某个特定的功能,则可以把它定义成函数。

使用函数最大的好处是可以使代码更简洁,提高重用性。在程序中使用自己定义的函数,首先必须定义函数,而在定义函数时,函数本身是不会执行的,只有在调用函数时才执行。

下面介绍函数的定义和调用的方法。

Go语言函数的定义

在 Go 语言中,定义函数需要使用 func 关键字。函数主要由 5 个部分组成,分别是关键字 func、函数名、参数列表、返回类型和函数体。

定义函数的基本语法格式如下:
func 函数名(参数 1, 参数 2, ...)(返回类型){
    函数体
}
参数说明如下:
定义没有参数和返回值的函数 hello(),在函数体中输出“Hello Go”字符串。代码如下:
func hello() {
    fmt.Print("Hello Go")
}

定义用于计算两个数乘积的函数 product(),该函数有两个参数 m 和 n,数据类型都是 int,返回值的类型同样是 int。代码如下:
func product(m int, n int) int {
    var r int
    r = m * n
    return r
}

Go语言函数的调用

函数定义后不自动执行,执行函数要在特定的位置调用函数。

调用函数需要创建调用语句,调用语句包含函数名称和一对小括号,如果有参数则需要在小括号中传递参数具体值。格式如下:
函数名(传递给函数的参数1,传递给函数的参数2,...)
定义的函数 hello() 的功能是输出“Hello Go”字符串。现在调用该函数,代码如下:
package main

import "fmt"

func hello() { // 定义 hello()函数
    fmt.Print("Hello Go")
}
func main() { // 调用 hello()函数
    hello()
}
运行结果如下:

Hello Go


【实例】获取切片中的最大值。定义函数 getMax(),在函数中定义切片,通过遍历切片的方式获取并输出切片中的最大值,最后调用函数输出结果。代码如下:
package main

import "fmt"

func getMax() { // 定义 getMax()函数
    num := []int{3, 5, 9, 6, 2, 7} // 定义切片
    maxValue := num[0] // 将第一个元素作为最大值
    // 遍历切片
    for i := 1; i < len(num); i++ {
        if num[i] > maxValue { // 如果当前元素大于最大值
            maxValue = num[i] // 更新最大值
        }
    }
    fmt.Print("切片中的最大值是", maxValue) // 输出最大值
}

func main() { // 调用 getMax()函数
    getMax()
}
运行结果如下:

切片中的最大值是9

相关文章