1、Go语言变量 每个变量都拥有自己的类型,必须经过声明才能开始使用
var a int //声明一个整形类型变量,可以保存整数数值,默认0 var b string //声明一个字符串类型变量,默认空 var c []float32 //声明一个32位浮点切片类型的变量,浮点切片表示由多个浮点类型组成的数据结构,默认0 var d func() bool //声明一个返回值为布尔类型的函数变量,此形式多用于回调函数,将函数以变量的形式报错,需要的时候重新调用,默认bool var e struct{ //声明一个结构体类型的变量,这个结构体拥有一个整型的 x 字段。切片、函数、指针默认为null x int } //以上可简写为: var ( a int b string c []float32 d func() bool e struct { x int } ) //开发中最常见的是短变量声明的形式 hp := 10 //短变量左边变量如已存在会报错,多个短变量声明和赋值中,至少有一个新声明变量在做之中就不会报错小结:Go声明变量的格式为:var 变量名 变量类型并且无需使用符号间隔,变量声明时自动对应内存进行初始化,不同类型有不同的默认值,也可在变量声明时赋予变量其他初始值即:var xa int = 100 声明int 类型变量 xa 初始值为100。又由于100和int 同为int类型,int可认为是冗余信息,简写为:var xa = 100,如果对默认的类型有特定要求就要标明,如:var damageRate float32 = 0.17 编辑器会尽量提高精度,默认 damageRate变量精度为float64。
2、变量值交换 方式一:
var a int = 100 var b int = 200 a = a ^ b b = b ^ a a = a ^ b fmt.Println(a, b)方式二(左值右值按照从左到右的顺序赋值):
var a int = 100 var b int = 200 b, a = a, b fmt.Println(a, b)输出:200 100