酆叔のBlog

  • 首页
  • 分享技术
  • 八卦黑料
  • 生活日常
  • 日记
酆叔のBlog
上辈子作恶多端,这辈子早起上班。
  1. 首页
  2. IT技术
  3. 正文

GO 数据类型

2024年5月14日 609点热度 1人点赞 0条评论
  • 布尔类型
  • 整型
  • 浮点型
  • 复数类型
  • 字符类型
  • 派生类型
  • 零值

布尔类型

布尔类型只有真值和假值。

类型描述
booltrue 为真值,false 为假值

在Go中,整数0并不代表假值,非零整数也不能代表真值,即数字无法代替布尔值进行逻辑判断,两者是完全不同的类型。

整型

Go中为不同位数的整数分配了不同的类型,主要分为无符号整型与有符号整型。

序号类型和描述
uint8无符号 8 位整型
uint16无符号 16 位整型
uint32无符号 32 位整型
uint64无符号 64 位整型
int8有符号 8 位整型
int16有符号 16 位整型
int32有符号 32 位整型
int64有符号 64 位整型
uint无符号整型 至少32位
int整型 至少32位
uintptr等价于无符号64位整型,但是专用于存放指针运算,用于存放死的指针地址。

浮点型

IEEE-754浮点数,主要分为单精度浮点数与双精度浮点数。

类型类型和描述
float32IEEE-754 32位浮点数
float64IEEE-754 64位浮点数

复数类型

类型描述
complex12864位实数和虚数
complex6432位实数和虚数

字符类型

go语言字符串完全兼容UTF-8

类型描述
byte等价uint8可以表达ANSCII字符
rune等价int32可以表达Unicode字符
string字符串即字节序列,可以转换为[]byte类型即字节切片

派生类型

类型例子
数组[5]int,长度为5的整型数组
切片[]float64,64位浮点数切片
映射表map[string]int,键为字符串类型,值为整型的映射表
结构体type Gopher struct{},Gopher结构体
指针*int,一个整型指针。
函数type f func(),一个没有参数,没有返回值的函数类型
接口type Gopher interface{},Gopher接口
通道chan int,整型通道

零值

官方文档中零值称为zero value,零值并不仅仅只是字面上的数字零,而是一个类型的空值或者说默认值更为准确。

类型零值
数字类型0
布尔类型false
字符串类型""
数组固定长度的对应类型的零值集合
结构体内部字段都是零值的结构体
切片,映射表,函数,接口,通道,指针nil

nil

源代码中的nil,可以看出nil仅仅只是一个变量。

var nil Type

Go中的nil并不等同于其他语言的null,nil仅仅只是一些类型的零值,并且不属于任何类型,所以nil == nil这样的语句是无法通过编译的。

标签: GO
最后更新:2024年5月14日

酆叔

上辈子作恶多端,这辈子早起上班。

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

最新 热点 随机
最新 热点 随机
2025/05/15 周四 晴 2025/05/12 周一 晴 2025/05/08 周四 多云 2025/05/07 周三 阵雨 2025/05/06 周二 阵雨 2025/04/30 周三 多云
2025/04/27 周日 阴2025/04/28 周一 阵雨2025/04/29 周二 晴2025/04/30 周三 多云2025/05/06 周二 阵雨2025/05/07 周三 阵雨
VPN\机场 GO 常量和变量 2025/05/12 周一 晴 PHP之静态 安装MySql PHP 变量赋值自增
腾讯云
又拍云
订阅
订阅

COPYRIGHT © 2024 酆叔のBlog. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

豫ICP备2023016219号