Go之路一
Posted wangjian941118
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Go之路一相关的知识,希望对你有一定的参考价值。
一、声明变量
var a int var b string var c []float32 var d func() bool var e struct x int
- 第1行,声明一个整型类型的变量,可以保存整数数值。
- 第2行,声明一个字符串类型的变量。
- 第3行,声明一个 32 位浮点切片类型的变量,浮点切片表示由多个浮点类型组成的数据结构。
- 第4行,声明一个返回值为布尔类型的函数变量,这种形式一般用于回调函数,即将函数以变量的形式保存下来,在需要的时候重新调用这个函数。
- 第5行,声明一个结构体类型的变量,这个结构体拥有一个整型的 x 字段。
var 关键字开头,要声明的变量名放在中间,而将其类型放在后面。
Go 语言的变量声明格式为:
var 变量名 变量类型
除此之外还可以批量导入
var ( a int b string c []float32 d func() bool e struct x int )
二、变量初始化
var 变量名 类型 = 表达式
例如:
var hp int = 100
上面代码中,100 和 int 同为 int 类型,int 可以认为是冗余信息,因此可以进一步简化初始化的写法。
在标准格式的基础上,将 int 省略后,编译器会尝试根据等号右边的表达式推导 hp 变量的类型。
var hp = 100
举个例子:
var b = 40 var c = 20 var d float32 = 0.17 //当变量为浮点数时不声明会默认为float64 var e = float32(b-c)*d //把int类型的值转化为浮点数才能和浮点数进行计算,否则会报mismatched types int and float32 func main() fmt.Print(e)
结构体的使用:
package main import ( "fmt" ) type boby struct id int name string age int var b = boby0, "jan", 25 func main() fmt.Printf("The boy‘s name is %s", b.name)
还可以这么写
package main import ( "fmt" ) type boby struct id int name string age int //var b = boby0, "jan", 25 var b boby func main() b.id=0 b.name="jan" b.age=25 fmt.Printf("The boy‘s name is %s", b.name)
以上是关于Go之路一的主要内容,如果未能解决你的问题,请参考以下文章