青训营上课节奏实在是太快了,纯0基础的话肯定是跟不上的,本文将对GO语言进一步详细讲解。
1. 导包
1.1 单次导包个数
导包可以一次导一个包,也可以一次导多个包,如下所示:
//第一种方式
import "包名"
//第二种方式
import (
"包1"
"包2" )
1.2 导包其他选项
在导包时可以将库中的所有包导进来,也可以对这个包取别名。在GO语言中,导的包必须用到,否则会报错!为屏蔽导包后没用到包而导致的报错问题,可加"_"忽略此包,如下所示:
import . "fmt"//导入所有包
import otherName "fmt"//取别名
import _ "fmt"//忽略此包
2.变量
2.1 声明与赋值
变量声明有三种,分别为短等赋值、var赋值、const赋值。
2.1.1 短等号型
用:=(短等号)声明并赋值的方式,此种方式编译器会自动推导变量类型。如下所示:
a:=4
b:="str"
e, f, g := 2, 5, 8//多个变量赋值,e=2,f=5,g=8
2.1.2 var
利用var修饰赋值语句可直接由编译器推导出变量类型,也可以自己指定变量类型。用var定于与赋值的形式有多种多样,既可以定义一个或多个相同类型的变量,还可以一次性定义和赋值多个不同类型的变量。具体如下:
var b, c int //初始值为0
var d int = 100
var (
i int = 45
j string = "this_is_j"
)
2.1.3 const
用const修饰的变量不可改变,const类型常量的声明与定义与var一样,只需要将var改为const就可以。另外在const中可以使用oita自动增长对变量进行赋值,oita有多种多样的使用方式,以下列举了两种,如下所示:
const (
//iota在const自动自动增长,如果是同一行,值都一样
k = iota //0
m = iota //1
)
const (
//iota在const自动自动增长,如果是同一行,值都一样
k = iota //0
m //1
n //2
o //3
p //4
)
2.2 变量类型
Goland中的变量类型主要有以下几类:
int(int8-int64)、uint(uint8-uint64)、bool、byte(char)、rune(4字节,储存unicode码,可储存中文字符)、complex64/128(复数类型)、uintptr(4,指针类型)。
复数类型长这样:实部+虚部i,如下举例所示:
3 + 4i
2.3变量输入输出
利用fmt包下的print函数可进行打印,这里介绍Println与Printf这两种。
2.3.1 Printf
这里的Printf与C语言中printf函数相似,都是格式化输出结果,但不同的是Goland中新加了%T(操作变量所属类型)和%v(自动匹配格式输出)。
·补充
v 值的默认格式。 %+v 添加字段名(如结构体) %#v 相应值的Go语法表示
2.3.2 Println
在Goland中,Println是自动匹配格式输出,与%v差不多。
2.3.3 Scanf
这里的Scanf与C语言中Scanf函数相似,都是格式化输入,Scanf的变量需要用&取地址。
2.3.4 Scan
在Goland中,Scan是自动输入,类似C++中的std::cin,但变量需要用&取地址。
·注意
在Goland中调用Printf、Println、Scanf、Scan这几个函数需要在前面加包名fmt。