以下是 Go 语言 关键词、内置函数、核心标准库、数据类型 的结构化整理,严格遵循「名称: 说明」格式,适配最新 Go 1.23 版本,兼顾实用性和完整性:

一、关键词(共 25 个)

var: 变量声明
const: 常量声明
type: 类型定义/类型别名声明
func: 函数/方法声明
struct: 结构体类型声明
interface: 接口类型声明
map: 映射类型声明
slice: 切片类型声明(仅用于类型定义,如 type MySlice []int
array: 数组类型声明(仅用于类型定义,如 type MyArr [5]int
if: 条件判断语句
else: 条件判断分支(与 if 搭配)
for: 循环语句(支持普通循环、死循环、for range 遍历)
switch: 分支选择语句(支持多条件、类型断言)
case: switch 分支条件
default: switch 默认分支(无匹配 case 时执行)
break: 跳出当前循环/switch 语句
continue: 跳过当前循环迭代,进入下一次
return: 函数返回(支持多返回值)
go: 启动 goroutine(轻量级协程)
select: 监听多个 channel 的读写事件
chan: 通道类型声明(用于 goroutine 通信)
import: 导入包
package: 声明包归属
defer: 延迟执行函数(函数退出前执行,先进后出)
panic: 触发致命错误(中断程序执行,需 recover 捕获)
recover: 捕获 panic 错误(仅在 defer 中生效,恢复程序执行)
fallthrough: switch 分支穿透(默认不穿透,显式声明后执行下一个 case)
iota: 常量计数器(仅在 const 块中使用,自增步长 1)

二、内置函数(共 18 个)

len: 获取长度(支持字符串、数组、切片、map、channel)
cap: 获取容量(支持数组、切片、channel)
new: 为值类型(int、struct 等)分配内存,返回指针(零值初始化)
make: 为引用类型(slice、map、channel)初始化底层结构,返回类型本身
append: 切片扩容(返回新切片,需赋值接收)
copy: 切片拷贝(返回实际拷贝长度,min(len(dst), len(src)))
close: 关闭 channel(仅发送方调用,关闭后不可写入,可读取剩余数据)
panic: 触发致命错误(中断程序,可被 recover 捕获)
recover: 捕获 panic 错误(仅在 defer 中生效,返回错误信息)
print: 简单打印(无格式化,不推荐生产使用,输出到标准错误)
println: 简单打印(换行,无格式化,不推荐生产使用,输出到标准错误)
complex: 创建复数(complex(3,4) → 3+4i,支持 float32/float64)
real: 获取复数的实部(real(3+4i) → 3)
imag: 获取复数的虚部(imag(3+4i) → 4)
clear: 清空容器(Go 1.21+,支持 map 删所有键、slice 元素置零)
error: 创建基础错误实例(等价于 errors.New(""),底层为 error 接口实现)
reflect.TypeOf: 获取变量的类型信息(反射核心,返回 reflect.Type)
reflect.ValueOf: 获取变量的值信息(反射核心,返回 reflect.Value)

三、核心标准库(高频实用,按使用场景排序)

fmt: 格式化输入输出(打印、字符串格式化、扫描输入)
net/http: HTTP 服务与客户端(搭建 Web 服务、发送 HTTP 请求)
encoding/json: JSON 序列化与反序列化(struct ↔ JSON 字符串)
io: 输入输出基础接口(Reader/Writer 接口,文件、网络流操作)
io/ioutil: 实用 IO 工具(已逐步迁移到 io 包,如 io.ReadFile)
os: 操作系统交互(文件操作、环境变量、进程管理)
os/exec: 执行外部命令(调用系统命令、脚本)
path/filepath: 文件路径处理(跨平台路径拼接、解析)
strings: 字符串操作(拼接、分割、替换、查找)
strconv: 字符串与基本类型转换(string ↔ int/float/bool)
time: 时间处理(时间解析、格式化、计时、定时器)
sync: 并发同步工具(Mutex 锁、WaitGroup、Once、Pool 等)
sync/atomic: 原子操作(并发安全的数值增减,无需锁)
context: 上下文管理(请求生命周期、超时控制、参数传递)
database/sql: 数据库通用接口(配合驱动操作 MySQL/PostgreSQL 等)
encoding/base64: Base64 编码解码
crypto/md5: MD5 哈希计算(加密、校验)
crypto/sha1: SHA-1 哈希计算
log: 基础日志记录(简单日志输出,可配置输出位置)
log/slog: 结构化日志(Go 1.21+,支持 JSON 日志、级别控制)
math: 数学运算(绝对值、三角函数、最值等)
math/rand: 随机数生成(伪随机数、随机种子)
sort: 排序算法(切片排序、自定义排序规则)
regexp: 正则表达式(字符串匹配、替换、提取)
bufio: 带缓冲的 IO 操作(高效读写大文件、网络流)
bytes: 字节切片操作([]byte 便捷处理,类似 strings 包)
flag: 命令行参数解析(解析程序启动参数)
encoding/xml: XML 序列化与反序列化
net/url: URL 解析与编码(处理 URL 参数、路径)
unicode/utf8: UTF-8 编码解码(字符串符文操作)

四、数据类型(按类别划分,含说明/示例)

1. 基本类型(值类型)

int: 有符号整数(32/64 位,取决于系统,示例:var a int = 10
int8: 有符号 8 位整数(范围:-128~127)
int16: 有符号 16 位整数(范围:-32768~32767)
int32: 有符号 32 位整数(范围:-2^31~2^31-1,示例:var b int32 = 65535
int64: 有符号 64 位整数(范围:-2^63~2^63-1)
uint: 无符号整数(32/64 位,取决于系统)
uint8: 无符号 8 位整数(范围:0~255,别名 byte)
uint16: 无符号 16 位整数(范围:0~65535)
uint32: 无符号 32 位整数(范围:0~2^32-1)
uint64: 无符号 64 位整数(范围:0~2^64-1)
uintptr: 无符号整数(用于存储内存地址,仅底层编程使用)
float32: 32 位浮点数(单精度,示例:var f float32 = 3.14
float64: 64 位浮点数(双精度,默认浮点类型,示例:var g float64 = 3.1415926
complex64: 64 位复数(实部+虚部均为 float32,示例:var c complex64 = 3+4i
complex128: 128 位复数(实部+虚部均为 float64,默认复数类型)
bool: 布尔类型(值:true/false,示例:var ok bool = true
string: 字符串类型(不可变,示例:var s string = "hello go"
byte: uint8 的别名(用于表示 ASCII 字符,示例:var ch byte = 'a'
rune: int32 的别名(用于表示 Unicode 符文,示例:var r rune = '中'

2. 复合类型(值类型,由基本类型组合而成)

array: 数组(固定长度,同类型元素,示例:var arr [5]int = [5]int{1,2,3,4,5}
struct: 结构体(自定义复合类型,含多个字段,示例:type User struct { Name string; Age int }

3. 引用类型(存储地址,传参时共享底层数据)

slice: 切片(动态数组,长度可变,示例:var s []int = []int{1,2,3}make([]int, 3, 5)
map: 映射(键值对集合,无序,示例:var m map[string]int = make(map[string]int)
channel: 通道(goroutine 通信管道,示例:var ch chan int = make(chan int)make(chan int, 10)
pointer: 指针(存储变量内存地址,示例:var p *int = &a,类型为 int/struct 等)

4. 接口类型(隐式实现,解耦核心)

error: 错误接口(仅 Error() string 方法,示例:var err error = fmt.Errorf("参数错误")
interface{}: 空接口(无任何方法,可接收任意类型值,示例:var x interface{} = 10x = "hello"
自定义接口: 显式声明方法集的接口(示例:type Reader interface { Read(p []byte) (n int, err error) }

视频教程网盘整理: https://pan.baidu.com/s/1eL5iugiARPPDhddvXwW-lQ?pwd=l4s9

菜鸟教程:https://www.runoob.com/go/go-tutorial.html

点赞(0)

评论列表 共有 0 条评论

暂无评论
发表
评论
返回
顶部