1. 在Go语言中,函数可返回多少个值?
答:可以返回无限的值,多个返回值类型可以不同。
package main
import "fmt"
func main() {
i, j := test()
fmt.Println(i, j)
fmt.Println(test())
}
func test() (string, int) {
i := "Hello"
j := 5
return i, j
}
2. 调用自己的函数被称为什么?
答:递归函数
package main
import "fmt"
func main() {
test(1, 0)
}
func test(portion int, eaten int) int {
eaten += portion
if eaten >= 5 {
fmt.Printf("I'm full! I've eaten %d fishes!\n", eaten)
return eaten
}
fmt.Printf("I'm still hungry! I've eaten %d fishes!\n", eaten)
return test(portion, eaten)
}
3. 在Go语言中,可将函数作为参数传递给其他函数吗?
答:可以!函数本身可以作为数据类型。
package main
import (
"fmt"
)
func main() {
fn := func() st