基础类型
基本类型
数值类型
整数类型有无符号和带符号两种。int
和uint
,这两种类型的长度相同,但具体长度取决于不同编译器的实现。rune
int8
int16
int32
int64
和byte
uint8
uint16
uint32
uint64
。其中rune
是int32
的别称,byte
是uint8
的别称。
需要注意的一点是,这些类型的变量之间不允许互相赋值或操作,不然会在编译时引起编译器报错。如下的代码会产生错误:invalid operation: a + b (mismatched types int8 and int32)
var a int8
var b int32
c:=a + b
另外,尽管float32
和float64
两种float
类型float64
。
这就是全部吗?No!complex128
complex64
RE + IMi
,其中RE
是实数部分,IM
是虚数部分,而最后的i
是虚数单位。下面是一个使用复数的例子:
var c complex64 = 5+5i
//output: (5+5i)
fmt.Printf("Value is: %v", c)
布尔类型
在bool
,值是 true
或false
,默认为false
。
//示例代码
var isActive bool // 全局变量声明
var enabled, disabled = true, false // 忽略类型的声明
func test() {
var available bool // 一般声明
valid := false // 简短声明
available = true // 赋值操作
}