首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

初识 go 语言:数据类型

前言:go语言的第三篇文章,主要讲述go语言中的数据类型,包括指针,结构体,数组,切片,映射,函数闭包等,每个都提供了示例,可直接运行。

指针

指针保存了值的内存地址;

(*操作符)表示指针指向的底层值;

(& 操作符)会生成一个指向其操作数的指针;

示例:

说明:*p 的值为 20 ,i 的值为 1

第一个输出:通过指针 p 读取 i

第二个输出: 通过指针 p 设置 i

结构体

使用 struct 关键字表示一个结构体。结构体就是一个字段的集合,可以使用.来取值示例:

数组

类型 [n]T 表示拥有 n 个 T 类型的值的数组。示例:

切片

切片的感念是基于数组的,通过指定数组的下标,动态获取数组。如:arr[1:3] 截取下标为1到3的数据 [下标前算后不算,中间用:分割]:

[1:3] 下标1到3; [:2]:下标0到2之前;[1:]下标为1。

切片并不存储任何数据,它只是描述了底层数组中的一段,所以修改切片数据,数组数据也会改变。切片 s 的长度和容量可通过表达式 len(s) 和 cap(s) 来获取,零值是 nil。示例:

切片的方法

make:

make创建切片b := make([]int, 0, 5)

参数含义: 1.类型,2:len(长度),3:cap(容量);

append

追加切片数组 s = append(s, 2, 3, 4)

给切片s尾部追加元素2,3,4

Range

用于for循环遍历切片或映射

每次迭代都会返回两个值:第一个值为当前元素的下标,第二个值为该下标所对应元素的一份副本

若你只需要索引,去掉value 的部分即可

可以将下标或值赋予 _ 来忽略它

示例:

映射

将键映射到值,也就是map。make 函数会返回给定类型的映射,并将其初始化备用。示例:

相关方法:

在映射 m 中插入或修改元素:m[key] = elem

获取元素:elem = m[key]

删除元素:delete(m, key)

通过双赋值检测某个键是否存在:elem, ok = m[key]

若 key 在 m 中,ok 为 true;否则,ok 为 false。

若 key 不在映射中,那么 elem 是该映射元素类型的零值

若 elem 或 ok 还未声明,你可以使用短变量声明:elem, ok := m[key]

函数闭包

函数可以像值一样传递。示例:

初识 go 语言系列

初识 go 语言

初识 go 语言:语法

初识 go 语言:数据类型

初识 go 语言:方法,接口及并发

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180710G1QHMV00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券