多平台统一管理软件接口,如何实现多平台统一管理软件接口
246
2022-11-02
Go 数据类型介绍
变量的数据类型
每一种数据都定议了明确的数据类型,在内存中分配了不同大小的内存空间。
go的数据类型分为两大块,一部分是基本数据类型,第二部分是复杂数据类型。
上面可以看到指针也是数据类型。
结构体类似于其他编程语言里面的类class,在go里面没有类,相当于用结构体替代类了。
数据类型
var ( a int b string c float32)
在Go中所有变量都是有类型的, 比如前面的int, string, float32 这些, 因此在接下来我们将先讲解下Go的基础类型
go在语言成面定义了如下几种基础类型:
整形 12345浮点型 123.45复数 123.45i字符 'a'字符串 "abc"布尔类型 true, false枚举类型 iota自定义类型
整形
为了区分不同范围的整数类型,后面使用来数字来表示
类型名 | 字节宽度 | 取值范围 |
int | 与平台有关 | 32 位系统 4 字节,64 位系统 8 字节 有符号整型 |
uint | 与平台有关 | 32 位 系统 4 字节,64 位 系统 8 字节 无符号整形 |
int8 | 1 字节 | 用 8 位表示的有符号整型 取值范围为:[-128, 127] |
int16 | 2 字节 | 用 16 位表示的有符号整型 取值范围为:[-32768,32767] |
int32 | 4 字节 | 用 32 位表示的有符号整型,取值范围为:[-2147483648,2147483647] |
int64 | 8 字节 | 用 64 位表示的有符号整型,取值范围为:[-9223372036854775808,9223372036854775807] |
uint8 | 1 字节 | 用 8 位表示的无符号整型,取值范围为:[0,255] |
uint16 | 2 字节 | 用 16 位表示的无符号整型,取值范围为:[0,65535] |
uint32 | 4 字节 | 用 32 位表示的无符号整型,取值范围为:[0,4294967295] |
uint64 | 8 字节 | 用 64 位表示的无符号整型,取值范围为:[0,18446744073709551615] |
uintptr | 与平台有关 | 32 位系统 4 字节,64 位系统 8 字节指针值的无符号整型 |
浮点型
类型名 | 字节宽度 | 取值范围 |
float32 | 4字节 | IEEE-754 32位浮点型数 |
float64 | 8字节 | IEEE-754 64位浮点型数 |
complex64 | 4字节 | 32 位实数和虚数 |
complex128 | 8字节 | 64 位实数和虚数 |
别名
类型名 | 字节宽度 | 取值范围 |
byte | 1 字节 | 字节类型,取值范围同 uint8 |
rune | 4 字节 | Unicode 码点 取值范围同 uint32 |
字符类型
没有专门的字符型,使用byte来保存单个字母字符。
byte是不能存一个汉字的,因为在go里面都是使用utf-8的编码,如果一个汉字进去一个byte是存放不下的,按照编码的规定一个汉字占用三个字节。但是一个byte可以存放字母这些。
字符串类型
Go 语言内置了字符串类型,使用 string 表示
字面量:
可解析字符串:通过双引号(")来创建,不能包含多行,支持特殊字符转义序列原生字符串:通过反引号(`)来创建,可包含多行,不支持特殊字符转义序列
特殊字符:
\:反斜线':单引号":双引号\a:响铃\b:退格\f:换页\n:换行\r:回车\t:制表符\v:垂直制表符\ooo:3 个 8 位数字给定的八进制码点的 Unicode 字符(不能超过\377\uhhhh:4 个 16 位数字给定的十六进制码点的 Unicode 字符\Uhhhhhhhh:8 个 32 位数字给定的十六进制码点的 Unicode 字符\xhh:2 个 8 位数字给定的十六进制码点的 Unicode 字符
布尔类型
布尔类型用于表示真假,类型名为 bool,只有两个值 true 和 false,占用一个字节宽度,零值为 false
var ( IsBoy bool = true IsGirl bool = true)
枚举类型
自定义类型
比如我们可以定义自己
type Gender string
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~