第十课 go语言函数
Posted liufei1983
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第十课 go语言函数相关的知识,希望对你有一定的参考价值。
1 内置函数
len() 函数可以接受不同类型参数并返回该类型的长度。
如果我们传入的是字符串则返回字符串的长度,
如果传入的是数组,则返回数组中包含的元素个数。
2 自定义函数
// 函数返回单个值 func Max(a, b int) int { if a > b { return a } else { return b } } // 函数返回多个值 func Swap(a, b int) (int, int) { return b, a }
3 值传递 和 引用传递
var aa, bb int = 1, 10 Swap2(&aa, &bb) fmt.Println(aa) fmt.Println(bb) func Swap2(a *int, b *int) () { var temp int temp = *a *a = *b *b = temp }
4 函数方法
方法就是一个包含了接受者的函数,接受者可以是命名类型或者结构体类型的一个值或者是一个指针。所有给定类型的方法属于该类型的方法集
package main
import "fmt"
type Circle struct { //定义结构体
radius float64
}
func main() {
var c Circle
c.radius = 10.00
fmt.Println("Area of c is ", c.getArea()) // 可以直接调用结构体的方法
}
func (c Circle) getArea() float64 { // 这个方法是结构体的方法
return 3.14*c.radius*c.radius
}
5 函数闭包
以上是关于第十课 go语言函数的主要内容,如果未能解决你的问题,请参考以下文章