0
点赞
收藏
分享

微信扫一扫

Go基本数据类型

秦瑟读书 2022-03-14 阅读 70

内置类型

1、值类型

  • 长度固定的数据类型
bool
int(32 or 64), int8, int16, int32, int64 // 占用字节数不一样,浪费内存
uint(32 or 64), uint8(byte), uint16, uint32, uint64 
float32, float64
string
complex64, complex128 
array	// 固定长度的数组

2、引用类型:(指针类型)

  • 长度不固定,可以扩充的类型
slice		// 序列数组(最常用) 
map  	// 映射
chan	// 管道

内置函数

  • Go 语言拥有一些不需要进行导入操作就可以使用的内置函数。
  • 它们有时可以针对不同的类型进行操作,例如:len、cap 和 append,或必须用于系统级的操作, 例如:panic。
  • 因此,它们需要直接获得编译器的支持。
append          // 用来追加元素到数组、slice中,返回修改后的数组、slice
close           // 主要用来关闭channel
delete          // 从map中删除key对应的value
panic           // 停止常规的goroutine  (panic和recover:用来做错误处理)
recover         // 允许程序定义goroutine的panic动作
real           // 返回complex的实部   (complex、real imag:用于创建和操作复数)
imag           // 返回complex的虚部
make           // 用来分配内存,返回Type本身(只能应用于slice, map, channel)
new            // 用来分配内存,主要用来分配值类型,比如int、struct。返回指向Type的指针
cap            // capacity是容量的意思,用于返回某个类型的最大容量(只能用于切片和 map)
copy            // 用于复制和连接slice,返回复制的数目
len            // 来求长度,比如string、array、slice、map、channel ,返回长度
print、println     // 底层打印函数,在部署环境中建议使用 fmt 包

基本类型介绍

类型 长度(字节) 默认值 说明
bool 1 false
byte 1 0 uint8
rune 4 0 Unicode Code Point, int32
int, uint 4或8 0 32 或 64 位
int8, uint8 1 0 -128 ~ 127, 0 ~ 255,byte是uint8 的别名
int16, uint16 2 0 -32768 ~ 32767, 0 ~ 65535
int32, uint32 4 0 -21亿~ 21亿, 0 ~ 42亿,rune是int32 的别名
int64, uint64 8 0
float32 4 0.0
float64 8 0.0
complex64 8
complex128 16
uintptr 4或8 以存储指针的 uint32 或 uint64 整数
array 值类型
struct 值类型
string “” UTF-8 字符串
slice nil 引用类型
map nil 引用类型
channel nil 引用类型
interface nil 接口
function nil 函数

举报

相关推荐

0 条评论