Go语言编程基础 包、变量、函数(一)

Go程序由包构成
程序从main包开始运行。
包命与导入路径的最后一个元素一致。e.g."math/rand"中源码以package rand开始。

package main
import (
	"fmt"
	"math/rand"
)
func main() {
	fmt.Println("The number is ", rand.Intn(10))
}

导入

Go可以使用圆括号组合导入多个包,即分组导入,也可以编写多个导入语句进行导入。但是推荐使用分组导入。

package main

import (
  "fmt"
  "math"
)

func main() {
  fmt.Printf("Now you have %g problems", math.Sqrt(7))
}

导出名

Go中,名称以大写字母开头,即已导出。e.g. Pi导出自math包。
导入包时,只能引用已导出名称。任何“未导出”名称在包外皆无法访问。

package main

import (
	"fmt"
	"math"
)

func main() {
	fmt.Println(math.Pi)
}

函数

package main

import "fmt"

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

func main() {
	fmt.Println(add(42, 123))
}

当连续两个或多个函数的已命名形参类型相同时,除最后一个类型外,其余皆可以省略。

package main

import "fmt"

func fff(x, y, z int) {
  fmt.Println(x)
  fmt.Println(y)
  fmt.Println(z)
}
func main() {
  fff(1, 2, 3)
}

多值返回

函数可以返回任意数量的返回值。

package main

import "fmt"

func rrr(x, y, z int) (int, int, int) {
  return x+10, y+10, z+10
}

func main() {
  a, b, c := rrr(1, 2, 3)
  fmt.Println(a, b, c)
}

命名返回值

Go的返回值可以被命名,被命名的返回值被视作函数顶部的变量。
返回值的名称可以作为文档使用。
没有参数的return 语句返回已命名的返回值,即直接返回。
直接返回语句应当用于短函数,用于长函数会影响代码可读性。

package main

import "fmt"

func ggg(x, y, z int)(xx, yy, zz int) {
  xx = x
  yy = y
  zz = z
  return
}

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

学习源:Go指南

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值