变量:
golang中不存在没有初始化的变量数据,×××默认为0,字符型默认为空,指针默认为nil,结构体中的数据也会被初始化。
//var str string = "dfdfdf"
//var varuint8 uint8 //varuint8 =0 声明一个变量,默认为0//var str string //str="",默认为空
//fmt.Println(varuint8)
//str = "dfd"
str := "dsa" //str为一个字符串,声明赋值同时完成
uintvar := 123456 //uintvar为一个×××变量_ , b := 34, 35 //“_”为特殊变量,任何赋给“_”的值将会被丢弃 fmt.Println(b) //输出35
fmt.Println(uintvar) //输出123456
fmt.Println(str) //输出dsa KeyPoint:①、修改代码后需重新build后运行才能看到修改后的效果,直接运行不会看到修改后的效果,看到的是上一次的结果。。。②、若声明了变量但未使用该变量会报错,程序不会执行该变量之后的代码③、全局变量不能使用“:=”的形式,声明并赋值 1、×××变量 ×××类型根据电脑的硬件决定适当的长度。意味着在32 位硬件上,是32 位的;在64 位硬件上是64 位的。注意:int 是32 或64 位之一,不会定义成其他值。uint 情况相同。如果你希望明确其长度,你可以使用int32 或者uint32。完整的整数类型列表(符号和无符号)是int8,int16,int32,int64 和byte,uint8,uint16,uint32,uint64。byte是uint8 的别名。浮点类型的值有float32 和float64 (没有float 类型)。64 位的整数和浮点数总是64 位的,即便是在32位的架构上。KeyPoint:不能给某一类型的×××变量赋值其他×××类型Ex:var varuint8 uint8var varint int
varint = varuint8 + varuint8 //illegal
varint = varuint8 + 5 //illegal
varuint8 = varuint8 + 5 //This is ok
2、常量
①、使用const关键字
②、不用指明是哪种类型
③、可使用iota创建枚举
Ex:
const sd = 5 //×××常量
const sdstr = "df" //字符串常量
const (
cnum1 = iota //cnum1 = 0
cnum2 //cnum2 = 1
)
const (
cnum3 = "djjf" //cnum3=cnum4=cnum5 = "djjf"
cnum4
cnum5
)
const (
cnumint1 = 1 //cnumint1=cnumint2=cnumint3 = 1
cnumint2
cnumint3
)
const (
cnumstr1 = 1 //cnumstr1 = 1
cnumstr2 = "dfd" //cnumstr2 = "dfd"
cnumstr3 = "djfj" //cnumstr3 = "djfj"
)