为了完成某一功能的程序指令(语句)的集合,称为函数。Go 语言 的函数可以分为:自定义函数和系统函数。
Go 语言函数与其他语言函数最大的不同是,Go 语言的函数可以支持 返回任意多个值,而其他语言的函数一般只支持返回一个值。
Go 语言的函数也支持普通函数、匿名函数 和 闭包 三种形式。
Go 语言是编译型语言,所以函数编写的顺序是无关紧要的,鉴于可读性的需求,最好把 main() 函数写在文件的前面,其他函数按照一定逻辑顺序进行编写(例如函数被调用的顺序)。
在程序中,编写函数的主要目的是将一个需要很多行代码的复杂问题分解为一系列简单的任务来解决,而且,同一个任务(函数)可以被多次调用,有助于代码重用。
Go 语言函数属于 “一等公民”,所以:
func funcName(paramlist paramType)(returnval returnType){
// 执行语句...
return valuelist
}
参数 | 描述 |
---|---|
func | 定义函数所使用的关键字。 |
funcName | 函数名。 |
paramlist | 函数参数列表。 |
paramType | 函数参数类型。 |
returnval | 可选,函数返回值。 |
returnType | 函数返回值类型。 |
return | 函数返回值使用的关键字。 |
valuelist | 函数返回值列表。 |
函数可以有返回值,也可以没有返回值。同时,Go 语言函数也支持返回多个值。
用函数,实现计算任意两个数的和
package main
import "fmt"
func sum(a, b int)int{
return a+b
}
func main() {
fmt.Println("嗨客网(www.haicoder.net)")
//用函数,实现计算任意两个数的和
result := sum(10,20)
fmt.Println("Result =", result)
}
程序运行后,控制台输出如下:
我们定义了一个函数 sum,传入两个 int 类型 的参数,函数返回两个参数的和。
为了完成某一功能的程序指令(语句)的集合,称为函数。Go 语言的函数可以支持返回任意多个值,而其他语言的函数一般只支持返回一个值。