Golang
文章平均质量分 52
Golang
极客点儿
但行好事,莫问前程
展开
-
Golang 结构体
结构体的定义为了提高数据类型的灵活性,我们可以把基础数据类型聚合到一起形成一个新的数据类型,这个新的数据类型就是结构体,其中每个基础数据都是结构体的成员。结构体的声明定义结构体的关键字是 type 和 struct。type Data struct { id int name string}结构体的初始化结构体一旦声明完成就可以使用结构体类型了,初始化有两种方式。第一种,直接对类型进行初始化:data := Data{1, "Golang"}第二种,和基本类型使用方式一样,使用原创 2021-11-30 17:15:54 · 428 阅读 · 0 评论 -
Golang 字典
字典的定义字典是由若干个 key:value 键值对映射组合在一起的数据结构。字典是基于哈希表的实现,每个映射里的 key 都是唯一且必须是可哈希的,即 key 是不可变类型。字典的 key 和 value 都有各自的数据类型,在声明字典时必须指定 key 和 value 是什么类型的,然后使用 map 关键字创建字典。字典的声明初始化字典的声明和初始化一般分为四种方式。第一种,声明并初始化:var data map[string]string = map[string]string{ "i原创 2021-11-18 15:34:38 · 2000 阅读 · 0 评论 -
Golang 内置函数:make()
make() 是 Go 语言内存分配的内置函数,默认有三个参数。make(Type, len, cap)Type:数据类型,必要参数,Type 的值只能是 slice、 map、 channel 这三种数据类型。len:数据类型实际占用的内存空间长度,map、 channel 是可选参数,slice 是必要参数。len 的长度本质就是数组的长度。cap:为数据类型提前预留的内存空间长度,可选参数。所谓的提前预留是当前为数据类型申请内存空间的时候,提前申请好额外的内存空间,这样可以避免二次分配内存原创 2021-11-05 23:30:59 · 24090 阅读 · 1 评论 -
Golang 切片
切片的定义切片是具有相同类型元素组成且长度不固定的数据集合。切片与数组一样,也是具有相同类型元素的数据集合,不过有一个区别是切片是不固定长度的,这就给切片带来了很大的灵活性。切片的声明、初始化和数组几乎一样,唯一的区别是不固定长度。切片和数组的本质其实是一样的,每个切片值都会将数组作为其底层数据结构,切片可以看做是数组的进一步抽象,所以切片也可以叫做:动态数组。切片和数组有一个简单的区别,中括号里面有值的是数组,它的类型是 [n],中括号里面为空的是切片 []。var data [3]int //原创 2021-11-05 23:29:58 · 222 阅读 · 0 评论 -
Golang 数组
数组是具有相同类型元素组成且长度固定的数据集合。由定义可知有三个关键字:数据集合、相同类型、长度固定。数据集合:数据集合的意思是,多个元素(大于等于二),当然只有一个也可以称之为集合,但是一个元素的集合是没有意义的,一个元素的集合直接定义变量多好,不需要脱裤子放屁。相同类型:相同类型的意思是,数据集合里每个元素都是统一基础类型的数据,比如都是 int 类型或者都是 string 类型,数组是不可能出现 int 和 string 元素集合的混合。长度固定:长度固定的意思是,数组一旦定义,那原创 2021-11-02 18:03:07 · 210 阅读 · 0 评论 -
Golang 常量的声明和初始化
常量的声明定义和变量非常相似,无非是将关键字 var 替换成 const。但需要注意一点,就是常量必须要初始化的,也就是必须要有值,不能像变量那样,先定义后赋值。而且常量听名字就知道是一旦赋值后就是不可变的。常量声明和初始化常量声明,指定常量数据类型并且初始化:const name string = "Golang"常量声明,根据常量的值自动推导出数据类型:const name = "Golang"多常量声明,指定常量类型并且初始化:const name, num int = 1, 2原创 2021-11-02 11:27:12 · 1030 阅读 · 0 评论 -
Golang 执行方式
main.gopackage mainimport "fmt"func main () { fmt.Println("Hello World")}解释执行:go run main.go编译执行:go build main.go./miango build -o hello main.go./hello原创 2021-11-02 10:04:59 · 220 阅读 · 0 评论 -
Golang 变量的声明和初始化
先来吐槽一下,Go 语言声明变量的方式太多太灵活了,以至于让人感觉到繁琐和冗余,甚至我都觉得违背了 Go 的设计哲学:“少即是多,只提供一种方法做事情”。。。吐槽归吐槽,Go 语言变量定义的方式虽然比较多样,但是可以尝试进行简化,给它分个类。我大致给分为两类:通过 = 定义和通过 := 定义。= 定义= 定义变量包括声明和赋值,需要通过关键字 var 来告诉编译器这是个变量。变量声明,指定变量类型,并且初始化变量:var name string = "Golang"变量声明,指定变量类型,原创 2021-11-02 10:04:08 · 1327 阅读 · 0 评论 -
Golang 包的定义、引入和工程管理
代码结构的编排是一门编程语言的基础,本文专门谈谈 Golang 包的定义、引入和工程管理,搞清楚 Golang 各个包之间是如何定义和引入的。包的基本概念在实际开发中,随着代码量越来越大功能越来越复杂,单个文件已经不适应继续使用的时候就需要对代码进行切割。将各个功能切割最常用的是通过函数,那么对单个文件中很多的函数切割就用到包的概念。一句话定义:包是用来组织源代码,并实现命名空间的管理。用到包的编程语言有很多,Python 中的包就和 Go 的很相似,都是通过 import 来引入,C 也有类似的原创 2021-10-27 10:52:19 · 911 阅读 · 0 评论 -
如何用最快的时间学会 Go 语言?
如果我告诉你只需要学习半天 Golang 就能开发应用程序你信不信?我一直认为学习一门新的编程语言难点不在语法(除个别语言,绝大多数语言都是 “C-like”),难点是如何有效快速的应用到实际开发和工程管理中,并且能极大发挥出这门语言最大的优势特性。首先,先去官网下载 Golang 编译器,具体安装参考官网方案:https://golang.org/。着重强调一点,学习任何语言千万别去捣鼓 IDE 这些编辑器和集成环境,要不然会让你陷入编辑器的使用方法,而不是语言本身的知识。最好的方式就是用 Sub原创 2021-10-25 17:27:56 · 1449 阅读 · 0 评论 -
Golang 安装 Gin 失败解决方案
正常情况下安装使用官方提供的命令直接安装即可:go get -u github.com/gin-gonic/gin因为有些包需要科学上网,导致安装失败,这时就需要修改 GO 语言环境配置,修改代理即可下载安装。go env -w GO111MODULE=ongo env -w GOPROXY=https://goproxy.io,directgo get -u github.com/gin-gonic/gin...原创 2021-10-25 14:54:18 · 1564 阅读 · 2 评论