Go
文章平均质量分 69
我想当数字游民
正在实习,看好web3,我先 all in 了,希望大家共同学习共同进步吧
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Go 语言字符串处理核心总结
本文总结了Go语言字符串处理的三大基础类型:string(只读字节切片,UTF-8编码)、byte(1字节,处理ASCII/二进制数据)和rune(4字节,表示Unicode码点)。重点指出直接下标访问字符串会导致多字节字符截断,推荐使用for range循环或转换为[]rune来正确处理字符。最后强调字符串不可变性,修改需先转为[]byte或[]rune再转回。原创 2025-11-25 11:22:34 · 320 阅读 · 0 评论 -
Go 语言中的 switch 语法以及重点特征
Go语言中的switch语句分为三种类型:表达式switch(用于值匹配)、无表达式switch(替代if-else链)和类型switch(判断接口类型)。表达式switch支持多值判断和自动中断;无表达式switch通过布尔表达式进行条件判断;类型switch使用.(type)语法识别接口实际类型,并自动转换变量。此外,fallthrough关键字可强制执行下一个case。这些灵活的switch用法使Go语言的条件判断更加简洁高效。原创 2025-09-10 10:48:31 · 525 阅读 · 0 评论 -
在Go语言中,如何将参数配置化
本文介绍了如何将硬编码参数配置化的实践方法。首先定义配置结构体并设置默认值,然后实现多级配置加载机制,优先级为:命令行参数 > 配置文件 > 默认值。文章详细说明了配置文件解析(支持YAML/JSON格式)和命令行参数处理的实现,最后通过配置接口统一访问方式,并添加了配置验证功能。这种方案提高了程序的灵活性和可维护性,使参数调整无需重新编译代码即可完成。原创 2025-09-10 10:29:48 · 321 阅读 · 0 评论 -
Go的切片是什么?一些小细节和容易错的地方
Go切片本质上是一个描述底层数组的结构体(切片头),包含指针、长度和容量信息。赋值切片时只是复制切片头而非数据,导致多个切片可能共享同一底层数组。文中通过代码示例揭示了潜在问题:通过切片副本修改元素时,原始切片会同步变化;但一旦append导致扩容,副本将指向新数组,与原始切片失去关联。最佳实践是直接通过原始切片变量操作,避免依赖副本修改,如res[len(res)-1][1]=99而非last[1]=99,尤其当涉及append时更需谨慎处理。理解切片与底层数组的关系对编写正确Go代码至关重要。原创 2025-09-09 12:22:56 · 600 阅读 · 0 评论 -
Protocol Buffers(Protobuf)是什么,为什么能压缩数据,高效传输,达到流量压缩
本文介绍了Protocol Buffers(Protobuf)作为高效数据序列化工具的优势和使用方法。相比JSON/XML,Protobuf通过压缩字段名显著减少传输流量。核心使用步骤包括:1)定义.proto消息结构;2)用protoc生成代码;3)使用生成的方法进行序列化/反序列化。文章还解释了Proto3处理未设置字段的机制:默认值字段会被省略,接收方自动填充默认值。如需区分"未设置"和"默认值",可使用optional关键字。这种设计既保证了兼容性又优化了传输原创 2025-09-04 15:00:53 · 512 阅读 · 0 评论 -
go mod tidy运行出错,go中的依赖问题解决
摘要:本文介绍了Go项目中使用私有GitLab仓库时运行go mod tidy可能遇到的依赖问题及解决方案。常见错误包括身份验证失败、仓库未找到、版本解析错误等。主要解决方法包括:1) 配置GOPRIVATE环境变量;2) 设置个人访问令牌(PAT)或SSH身份验证;3) 验证仓库路径和版本是否正确;4) 清理本地模块缓存。文章提供了Windows和Linux下的具体配置命令,帮助开发者解决私有模块依赖问题。(150字)原创 2025-08-13 15:11:29 · 765 阅读 · 0 评论 -
Gin框架学习1——初步理解,对比Java Spring Boot来理解
利用Spring Boot 理解 Gin框架原创 2025-08-07 17:23:07 · 1006 阅读 · 0 评论
分享