Go速成无压力【三】:函数(Functions)

(一)函数基本定义和演示

一个函数可以设置0或者更多的参数,函数的命名关键字为func ,后接参数,然后是函数类型,
每个函数都必须具有返回值,返回值用关键字return 返回,返回类型必须和函数类型一致

package main
import "fmt"

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

func main(){
	fmt.Println("x+y的计算结果为:",dis())
}

在这里插入图片描述

如果写了参数不传参会报错

在这里插入图片描述


(二)函数的参数简写技巧

如果函数需要传多个参数的值都一样的类型,我们可以简写只定义一个类型,比如:
func a(x , y , z int)可以写为func a(x int, y int, z int)

package main

import "fmt"

func multiplication(x , y , z int) int{
	return x*y*z
}

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

在这里插入图片描述


(三)一个微微复杂的演示

package main

import (
	"fmt"
	"strconv"
)

func dis(x int, y int) string {
	var str string = "x+y的计算结果为:" + strconv.Itoa(x+y)
	return str
}

func main() {
	fmt.Println(dis(2, 3))
}

在这里插入图片描述

(四)复合型结果

一个函数可以返回各种类型的数值

注意这里我们在函数的圆括号后面写了两个string类型,因为我们需要返回两个参数,这是一个交换字符串的演示 >

package main

import "fmt"

func swap(str1, str2 string) (string, string) {
	return str2, str1
}
func main() {
	fmt.Println(swap("你好世界!", "拜拜,过去,"))
}

在这里插入图片描述


(五)被命名的返回值

函数的返回值可以被命名在函数的圆括号后面,return关键字后面不写任何值,且被命名的返回值不能和函数圆括号内的参数命名重合,否则会报错,这样的写法可能对函数的命名会较长

package main
import "fmt"

func add10(a int)(b int){
	b=a+10
	return 
}

func main(){
	fmt.Println(add10(20))
}

在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章