go语言学习 一

1、变量声明

     指定变量类型,声明后若不赋值,使用默认值

     根据值自行判定变量类型。

     省略var, 注意 :=左侧的变量不应该是已经声明过的,否则会导致编译错误

2、go语言作用域

     函数内定义的变量称为局部变量

     函数外定义的变量称为全局变量

     函数定义中的变量称为形式参数

3、go语言数组

      声明数组:Go 语言数组声明需要指定元素类型及元素个数

      多维数组

4、go语言指针

     一个指针变量指向了一个值得内存地址

     在指针类型前面加上 * 号(前缀)来获取指针所指向的内容

     空指针:当一个指针被定义后没有分配到任何变量时,它的值为 nil

     go指针数组

     go指向指针的指针

     go 向函数传递指针参数

5、语言结构体

      结构体定义需要使用 type 和 struct 语句。struct 语句定义一个新的数据类型,结构体有中有一个或多个成员。type 语句设定了结构体的名称

      一旦定义了结构体类型,它就能用于变量的声明

     可以像其他数据类型一样将结构体类型作为参数传递给函数

     可以定义指向结构体的指针类似于其他指针变量

6、go语言切片

     与数组相比切片的长度是不固定的,可以追加元素,在追加时可能使切片的容量增大

     切片是可索引的,并且可以由 len() 方法获取长度。

     切片提供了计算容量的方法 cap() 可以测量切片最长可以达到多少

     一个切片在未初始化之前默认为 nil,长度为 0

7、go语言范围

      Go 语言中 range 关键字用于 for 循环中迭代数组(array)、切片(slice)、通道(channel)或集合(map)的元素。在数组和切片中它返回元素的索引和索引对应的值,在集合中返回 key-value 对的 key 值

8、go   Map(集合)

     Map 是一种无序的键值对的集合。Map 最重要的一点是通过 key 来快速检索数据,key 类似于索引,指向数据的值。

     Map 是一种集合,所以我们可以像迭代数组和切片那样迭代它。不过,Map 是无序的,我们无法决定它的返回顺序,这是因为 Map 是使用 hash 表来实现的。

     

猜你喜欢

转载自www.cnblogs.com/gpzhen/p/9259128.html