• 技术文章 >后端开发 >Golang

    go语言中return怎么用

    青灯夜游青灯夜游2023-01-28 09:04:13原创65

    在go语言中,return关键字用于终止函数并可选地返回一个或多个结果值。如果return语句使用在普通的 函数中,可表示跳出该函数,不再执行函数中return后面的代码;如果return语句使用在main函数中,则表示终止main函数,也就是终止程序的运行。

    本教程操作环境:windows7系统、GO 1.18版本、Dell G3电脑。

    在 Go 语言 中,跳转控制语句除了有 goto 、break 和 continue 之外,还可以使用 return 。

    如果 return 语句使用在普通的 函数 中,则表示跳出该函数,不再执行函数中 return 后面的代码,可以理解成终止函数,并可选地返回一个或多个结果值。

    如果 return 语句使用在 main 函数中,表示终止 main 函数,也就是终止程序的运行。

    语法:

    func fun(){
        //do something
        return
    }
    func funcName(param1, param2 paramType1, ...)(returnType1, returnType2, ...){
    	//执行语句...
    	return 返回值列表
    }

    说明

    return 语句的使用案例

    1、使用return语句,终止函数执行不返回值

    package main
    import "fmt"
    func checkUserParam(val int){
    	if val <= 0{
    		fmt.Println("UserParam check Error")
    		return
    	}
    	fmt.Println("UserParam check OK")
    }
    func main() {
    	//使用return语句,终止函数执行
    	checkUserParam(0)
    	fmt.Println("Over")
    }

    1.png

    2、返回一个值

    package main
    import (
    	"fmt"
    )
    func gcdNormal(x, y int) int {
    	var n int
    	if x > y {
    		n = y
    	} else {
    		n = x
    	}
    	for i := n; i >= 1; i-- {
    		if x%i == 0 && y%i == 0 {
    			return i
    		}
    	}
    	return 1
    }
    func main() {
    	//函数只返回一个值
    	returnVal := gcdNormal(10,20)
    	fmt.Println("returnVal =", returnVal)
    }

    2.png

    3、返回多个值

    package main
    import (
    	"fmt"
    	"math"
    )
    func getPageCount(pageSize int)(bool, int){
    	if pageSize <= 0{
    		return false, 0
    	}
    	pageCount := math.Ceil(float64(100/pageSize))
    	return true, int(pageCount)
    }
    func main() {
    	//Go语言的函数可以返回多个值
    	if isOk, pageCount := getPageCount(10); !isOk{
    		fmt.Println("Error")
    	}else{
    		fmt.Println("Ok, PageCount =", pageCount)
    	}
    }

    3.png

    总结

    return关键字用于终止函数并可选地返回一个或多个结果值,也可用于控制程序的跳转。

    【相关推荐:Go视频教程编程教学

    以上就是go语言中return怎么用的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:go语言 Golang
    上一篇:Go语言中注释有什么作用 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • go语言怎么向列表中添加列表• go语言中不定参数是什么• Go语言中转义符是什么• go语言中for的写法有哪些• go语言中range关键字怎么用• go语言中append()怎么用
    1/1

    PHP中文网