go 语言变量声明及常见数据类型

变量声明

go 语言使用 var 声明变量, 语法格式 : var 变量名称 类型, 示例

package main
func main() {
	var a int = 100
	println(a)
	var b string
	println(b)
}

变量名称

变量名称由字母 数字 下划线组成, 首字母不能为数字。

数据类型

基本数据类型:整型、浮点型、字符串、字符型、布尔型、复数。
容器数据类型:数组、切片(slice)、通道(chan)、映射(map)。
其它数据类型:函数、结构体、接口。

整型

无符号:uint、uint8,uint16,uint32,uint64
有符号:int、int8,int16,int32,int64
其中 int 和 uint 类型长度由操作系统类型决定,如果系统是32位的,那么它们都是32位(4字节);如果是64位的,那么它们都是64位(8字节)

浮点型

对于浮点类型,只有 float32 和 float64,没有 float 类型,使用IEEE-754 标准。
float32 精确到小数点后 7 位,float64 精确到小数点后 15 位。由于精度的问题,在进行数据比对的时候,就要考虑精度损失。

字符串

字符串类型使用 string 声明,在初始化时分为单行和多行。单行使用双引号, 如下:

str := "我最棒"

多行使用反引号,中间如果出现转义字符时,不会进行解析,原样输出,如下:

str := `hi ..`

字符型

byte 和 rune 是字符型,但其实不是新增的类型,byte 是 uint8 的别名,占用1个字节,rune 是 int32 的别名,占用4个字节。

布尔型

布尔型使用 bool 声明,要么是 true, 要么是 false, 默认是false。

复数

复数类型使用 complex64 和 complex128 声明,complex64 是 32 位实数和虚数,complex128 是 64 位实数和虚数。