![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Golang
文章平均质量分 77
K_Watchmen
这个作者很懒,什么都没留下…
展开
-
Go:函数
func 函数名(参数)(返回值){函数体其中:函数名:由字母、数字、下划线组成。但函数名的第一个字母不能是数字。在同一个包内,函数名也称不能重名(包的概念详见后文)。参数:参数由参数变量和参数变量的类型组成,多个参数之间使用,分隔。返回值:返回值由返回值变量和其变量类型组成,也可以只写返回值的类型,多个返回值必须用()包裹,并用,分隔。函数体:实现指定功能的代码块。fmt.Println("Hello 沙河")原创 2024-07-08 18:47:32 · 1004 阅读 · 0 评论 -
Go:map
map是一种无序的基于key-value的数据结构,Go语言中的map是引用类型,必须初始化才能使用。其中,KeyType:表示键的类型。ValueType:表示键对应的值的类型。map类型的变量默认初始值为nil,需要使用make()函数来分配内存。其中cap表示map的容量,该参数虽然不是必须的,但是我们应该在初始化map的时候就为其指定一个合适的容量。原创 2024-07-08 15:32:08 · 218 阅读 · 0 评论 -
Go:切片
切片(Slice)是一个拥有相同类型元素的可变长度的序列。它是基于数组类型做的一层封装。它非常灵活,支持自动扩容。切片是一个引用类型,它的内部结构包含地址、长度和容量。切片一般用于快速地操作一块数据集合。其中,name:表示变量名T:表示切片中的元素类型// 声明切片类型var a []string //声明一个字符串切片var b = []int{} //声明一个整型切片并初始化var c = []bool{false, true} //声明一个布尔切片并初始化。原创 2024-07-08 14:28:30 · 918 阅读 · 0 评论 -
Go:数组
var 数组变量名 [元素数量]T如:var a [5]int, 数组的长度必须是常量,并且长度是数组类型的一部分。一旦定义,长度不能变。[5]int和[10]int是不同的类型。a = b //不可以这样做,因为此时a和b是不同的类型数组可以通过下标进行访问,下标是从0开始,最后一个元素下标是:len-1,访问越界(下标在合法范围之外),则触发访问越界,会panic。{"北京", "上海"},{"广州", "深圳"},{"成都", "重庆"},原创 2024-07-08 13:52:44 · 293 阅读 · 0 评论 -
Go:流程控制语句
Go语言中最常用的流程控制有if和for,而switch和goto主要是为了简化代码、降低重复代码而生的结构,属于扩展类的流程控制。原创 2024-07-08 13:34:41 · 488 阅读 · 0 评论 -
Go:运算符
运算符用于在程序运行时执行数学或逻辑运算。Go 语言内置的运算符有:算术运算符关系运算符逻辑运算符位运算符赋值运算符。原创 2024-07-08 13:18:53 · 160 阅读 · 0 评论 -
Go语言基础:基本数据类型
Go语言中有丰富的数据类型,除了基本的整型、浮点型、布尔型、字符串外,还有数组、切片、结构体、函数、map、通道(channel)等。Go 语言的基本类型和其他语言大同小异。原创 2024-07-08 13:15:52 · 819 阅读 · 0 评论 -
Go语言基础:变量和常量
Go语言在声明变量的时候,会自动对变量对应的内存区域进行初始化操作。布尔型变量默认为false。定义数量级 (这里的<<表示左移操作,1<<10表示将1的二进制表示向左移10位,也就是由1变成了10000000000,也就是十进制的1024。常量的声明和变量声明非常类似,只是把var换成了const,常量在定义的时候必须赋值。Go语言的变量声明格式为:变量声明以关键字var开头,变量类型放在变量的后面,行尾无需分号。有时候我们会将变量的类型省略,这个时候编译器会根据等号右边的值来推导变量的类型完成初始化。原创 2024-07-08 12:54:49 · 543 阅读 · 0 评论 -
如何使用go module导入本地包
因为我并没有把liwenzhou.com/q1mi/p2这个包上传到liwenzhou.com这个网站,我们只是想导入本地的包,这个时候就需要用到replace这个指令了。在这个例子中,模块名是 github.com/q1mi/bubble,表示这个模块托管在 GitHub 上的 q1mi 用户名下的 bubble 仓库中。,这是做一个可以被其他项目依赖的开源库;(此时go.mod文件中依旧是只有module行和版本行,并没有随着依赖的添加更新了go.mod文件,使用go mod tidy也不会有变化);原创 2024-07-03 17:26:22 · 665 阅读 · 0 评论 -
GO语言之依赖管理
mod支持语义化版本号,比如go get foo@v1.2.3,也可以跟git的分支或tag,比如go get foo@master,当然也可以跟git提交哈希,比如go get foo@e3702bed2。可重复构建,指项目无论在谁的环境中(同平台)构建,产物都是相同的(这个主要解决 GOPATH 时代问题,每个人的 GOPATH 环境中可能同名依赖包但版本不一,因此构建出的产物会有所不同),这个就是依赖上面的准确记录,因此可以重复构建。如果不同的项目依赖同一个第三方的库的不同版本,应该怎么解决?原创 2024-07-03 16:07:33 · 629 阅读 · 0 评论 -
为什么学习GO语言
goole开源编译性语言部署简单,只需要将编译好的二进制文件拷贝到服务器即可;21世纪的C语言Go语言支持多核并发;原创 2024-07-03 15:26:44 · 103 阅读 · 0 评论 -
Go安装和环境配置
GOROOT和GOPATH都是环境变量,其中GOROOT是我们安装go开发包的路径,而从Go 1.8版本开始,Go开发包在安装完成后会为GOPATH设置一个默认目录,并且在Go1.14及之后的版本中启用了Go Module模式之后,不一定非要将代码写到GOPATH目录下,所以也就不需要我们再自己配置GOPATH了,使用默认的即可。这里的初始化项目中的项目也可以是代码托管平台的项目,比如go mod init gitee.com/kjk/hello //也就是说项目可以有域名。GOPath:是默认工作目录;原创 2024-07-02 20:53:32 · 437 阅读 · 0 评论