Go 语言基础内容回顾1 | 青训营笔记

52 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 7 天

一、包

每个 Go 程序都是由包构成的。

程序从 main 包开始运行。

例如,程序通过导入路径 "fmt""math/rand" 来使用这两个包。

按照约定,包名与导入路径的最后一个元素一致。例如,"math/rand" 包中的源码均以 package rand 语句开始。

package main

import (
	"fmt"
	"math/rand"
)

func main() {
	fmt.Println("My favorite number is", rand.Intn(10))
}

输出结果为:

My favorite number is 1

1、导入

此代码用圆括号组合了导入,这是“分组”形式的导入语句。

当然你也可以编写多个导入语句,例如:

import "fmt"
import "math"

不过使用分组导入语句是更好的形式。

package main

import (
	"fmt"
	"math"
)

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

2、导出名

在 Go 中,如果一个名字以大写字母开头,那么它就是已导出的。例如,Pizza 就是个已导出名,Pi 也同样,它导出自 math 包。

pizzapi 并未以大写字母开头,所以它们是未导出的。

在导入一个包时,你只能引用其中已导出的名字。任何“未导出”的名字在该包外均无法访问。

执行代码,观察错误输出。

package main

import (
	"fmt"
	"math"
)

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

二、函数

函数可以没有参数或接受多个参数。

在本例中,add 接受两个 int 类型的参数。

注意类型在变量名 之后

package main

import "fmt"

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

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


55

1、变量

var 语句用于声明一个变量列表,跟函数的参数列表一样,类型在最后。

就像在这个例子中看到的一样,var 语句可以出现在包或函数级别。

package main

import "fmt"

var c, python, java bool

func main() {
	var i int
	fmt.Println(i, c, python, java)
}