收录于 《Go 基础系列》,作者:潇洒哥老苗。学到什么什么是 map?如何创建 map?判断键是否存在?如何获取 map 长度?如何遍历 map?如何删除键/值对?map 是引用类型还是值类型?概念map 是一种键(key)/值(value)对的无序集合,在其它语言中称为字典、关联数组、哈希表等。当给定了键可以快速定位到值,而且键必须唯一的,不能出现相同。声 ......
347
0
0
2022-07-08
收录于 《Go 基础系列》,作者:潇洒哥老苗。学到什么什么是常量?如何定义常量?常量和变量有什么不同?如何使用常量?有哪些运算符?如何使用运算符?运算符的优先级?常量1. 概念常量的值在程序运行期间是不能改变的,而变量的值在运行期间是可以改变的。举个实际使用到常量的几个场景:web开发时,根据业务定义的错误码程序的发行版本号数据库连接池数量(如果不通过配置文 ......
353
0
0
2022-06-30
收录于 《Go 基础系列》,作者:潇洒哥老苗。学到什么if 条件语句的用法?switch 条件语句的用法?type-switch 用法?for 循环语句的用法?fallthrough 、break、continue、goto 用法?if 条件语句1. 使用格式当“条件判断”为 true 时,则进入分支。如下,当第一个 if 的条件判断为true时则进入,反之 ......
356
0
0
2022-06-30
了解使用数组和切片在 Go 中存储数据的优缺点,以及为什么其中一个更好。在本系列的第四篇文章中,我将解释 Go 数组和切片,包括如何使用它们,以及为什么你通常要选择其中一个而不是另一个。数组数组是编程语言中最流行的数据结构之一,主要原因有两个:一是简单易懂,二是可以存储许多不同类型的数据。你可以声明一个名为 anArray&nb ......
407
0
0
2022-06-15
// 借用例子 package main import ( "fmt""time" ) type field struct { name string } func (p *field) print() { fmt.Println(p.name) } func main() { ......
466
0
0
2022-05-24
大家好,我是 roseduan,经常看到一些小伙伴学习完 Go 语言的基础知识之后,无法找到合适的练手项目,然后就很迷茫。今天我向大家推荐几个我觉得还不错的 Go 语言入门练手项目,你可以根据自己的兴趣,选择一个合适的,自己去看看,学习一下。在这之前,需要说明一下,很多人看到别人的项目代码一头雾水,完全没有头绪,这是很正常的。因为别人的项目,可能是经历很长时 ......
403
0
0
2022-05-17
go 基础语法(变量常量枚举)变量定义使用 var 关键词var a, b, v boolvar s1, s2 string = "hello", "world"可放在函数内,或直接放在包内使用 var() 可以定义多个变量编译器可以自动区分变量类型使用 := 定义变量 (只能在函数内使用) package main im ......
344
0
0
2022-05-10
golang select 详解channel详解文章中讲到过channel的阻塞写、阻塞读、非阻塞写、非阻塞读,这里不再赘述,需要说明的是,select不止用来做channel的非阻塞操作,主要是用来作为多路复用操作channel的,机制和linux的select很像不同的写法会触发不同的机制,下面我们看看示例// 阻塞读,对应channel的 chanr ......
468
0
0
2022-05-06
[TOC]GO 中 defer的实现原理我们来回顾一下上次的分享,分享了关于 通道的一些知识点分享了 GO 中通道是什么通道的底层数据结构详细解析通道在GO源码中是如何实现的Chan 读写的基本原理关闭通道会出现哪些异常,panicselect 的简单应用要是对 chan 通道还有点兴趣的话,欢迎查看文章 GO 中 Chan 实现原理分享defer 是什么? ......
316
0
0
2022-04-29
GO 中 Chan 实现原理分享嗨,我是小魔童哪吒,还记得咱们之前分享过GO 通道 和sync包的使用吗?咱们来回顾一下分享了通道是什么,通道的种类无缓冲,有缓冲,单向通道具体对应什么对于通道的具体实践分享了关于通道的异常情况整理简单分享了sync包的使用要是对上述内容还有点兴趣的话,欢迎查看文章 GO通道和 sync 包的分享chan 是什么?是一种特殊的 ......
310
0
0
2022-04-29
GO 中 map 的实现原理嗨,我是小魔童哪吒,我们来回顾一下上一次分享的内容分享了切片是什么切片和数组的区别切片的数据结构切片的扩容原理空切片 和 nil 切片的区别要是对 GO 的slice 原理还有点兴趣的话,欢迎查看文章 GO 中 slice 的实现原理map 是什么?是 GO 中的一种数据类型,底层实现是 hash 表,看到 hash 表 是不是会 ......
315
0
0
2022-04-28
GO 中 slice 的实现原理上次我们分享的字符串相关的内容咱回顾一下分享了字符串具体是啥GO 中字符串的特性,为什么不能被修改字符串 GO 源码是如何构建的 ,源码文件在 src/runtime/ 下的 string.go字符串 和 []byte 的由来和应用场景字符串与 []byte 相互转换要是对GO 对 字符串 的编码还有点兴趣的话, 欢迎查看文章 ......
300
0
0
2022-04-28
GO 中 string 的实现原理上次我们分享的内容咱回顾一下分享了ETCD的简单单点部署,ETCD 使用到的包安装,以及会遇到的问题ETCD 的设置 和 获取KEYETCD 的WATCH 监控 KEY的简化ETCD 的租约 和保活机制ETCD 的分布式锁的简单实现要是对GO 对 ETCD 的编码还有点兴趣的话, 欢迎查看文章 GO 中 ETCD 的编码案例 ......
309
0
0
2022-04-28
前言当我们完成一个模块后,先不着急继续完成其他模块,而是进行单元测试,这样我们能够提前发现当前模块的错误,减少整个项目完成后出现的bug。可以了解下TDD(测试驱动开发)1.需要的包1.常用的包import ( //gomonkey : 一个方便的打桩工具 "github.com/agiledragon/gomonkey" ......
432
0
0
2022-04-25
博客:Golang项目中读取配置文件)package setting import ( "fmt" "github.com/gomodule/redigo/redis" "log" "time" ) var ( RedisPool *redis.Pool ) func InitRedis ......
304
0
0
2022-04-24