演示Go语言多返回值功能
Go语言革命性地在静态开发语言阵营中率先提供了多返回值功能。这个特性让开发者可以从原来用各种比较别扭的方式返回多个值的痛苦中解脱出来,既不用再区分参数列表中哪几个用于输入,哪几个用于输出,也不用再只为了返回多个值而专门定义一个数据结构。
/*
功能:演示函数具有多个返回值
*/
package main
import (
"fmt"
)
func main () {
id , name , sex , age := getStudent ( 2 ) // 调用函数getStudent,传入学号参数2,四个返回值保存在四个变量里
fmt . Println ( id , name , sex , age ) // 输出学号为2的学生信息
}
// 传入学生学号(id),返回多个值:学号(s_id)、姓名(s_name)、性别(s_sex)、年龄(s_age)
func getStudent ( id int ) ( s_id int , s_name string , s_sex string , s_age int ) {
switch id {
case 1 :
s_id = 1
s_name = "李晓丹"
s_sex = "女"
s_age = 20
break
case 2 :
s_id = 2
s_name = "王刚"
s_sex = "男"
s_age = 18
break
case 3 :
s_id = 3
s_name = "温新宇"
s_sex = "男"
s_age = 21
break
}
return
}
运行结果:
2 王刚 男 18
/*
功能:演示函数具有多个返回值
*/
package main
import (
"fmt"
)
func main () {
id , name , sex , age := getStudent ( 2 ) // 调用函数getStudent,传入学号参数2,四个返回值保存在四个变量里
fmt . Println ( id , name , sex , age ) // 输出学号为2的学生信息
}
// 传入学生学号(id),返回多个值:学号(s_id)、姓名(s_name)、性别(s_sex)、年龄(s_age)
func getStudent ( id int ) ( s_id int , s_name string , s_sex string , s_age int ) {
switch id {
case 1 :
s_id = 1
s_name = "李晓丹"
s_sex = "女"
s_age = 20
break
case 2 :
s_id = 2
s_name = "王刚"
s_sex = "男"
s_age = 18
break
case 3 :
s_id = 3
s_name = "温新宇"
s_sex = "男"
s_age = 21
break
}
return
}
运行结果:
2 王刚 男 18