摘要:
下载elasticsearch安装包 我用的是版本是elasticsearch-7-15-0,点击链接下载对应的系统的压缩包。下载完成之后是一个压缩包将压缩包压缩到你自己需要的文件夹中 注意:加压缩文件放入的文件夹名称中间不要有空格,例如我的是elastic-stack,不可以是elastic st 阅读全文
摘要:
变量的内在机制 Go语言中的变量是分为两部分的: 类型信息:预先定义好的元信息。 值信息:程序运行过程中可动态变化的。 反射介绍 反射是指在程序运行期间对程序本身进行访问和修改的能力。程序在编译时,变量被转换为内存地址,变量名不会被编译器写入到可执行部分。在运行程序时,程序无法获取自身的信息。 支持 阅读全文
摘要:
Go 语言中的错误处理与其他语言不太一样,它把错误当成一种值来处理,更强调判断错误、处理错误,而不是一股脑的 catch 捕获异常。 Error接口和错误处理 Error 接口 Go 语言中把错误当成一种特殊的值来处理,不支持其他语言中使用try/catch捕获异常的方式。 Error 接口 Go 阅读全文
摘要:
接口(interface)定义了一个对象的行为规范,只定义规范不实现,由具体的对象来实现规范的细节。 接口 本章学习目标 了解为什么需要接口以及接口的特点 掌握接口的声明和使用 掌握接口值的概念 掌握空接口的特点及其使用场景 在Go语言中接口(interface)是一种类型,一种抽象的类型。相较于之 阅读全文
摘要:
在工程化的Go语言开发项目中,Go语言的源码复用是建立在包(package)基础之上的。本文介绍了Go语言中如何定义包、如何导出包的内容及如何导入其他包。 包与依赖管理 本章学习目标 掌握包的定义和使用 掌握init初始化函数的使用 掌握依赖管理工具go module的使用 包(package) 包 阅读全文
摘要:
Go语言中没有“类”的概念,也不支持“类”的继承等面向对象的概念。Go语言中通过结构体的内嵌再配合接口,比面向对象具有更高的扩展性和灵活性。 类型别名和自定义类型 自定义类型 在Go语言中有一些基本的数据类型,如string、整型、浮点型、布尔等数据类型, Go语言中可以使用type关键字来定义自定 阅读全文
摘要:
区别于C/C++中的指针,Go语言中的指针不能进行偏移和运算,是安全指针。 要搞明白Go语言中的指针需要先知道3个概念:指针地址、指针类型和指针取值。 Go语言中的指针 任何程序数据载入内存后,在内存都有他们的地址,这就是指针。而为了保存一个数据在内存中的地址,我们就需要指针变量。 Go语言中的指针 阅读全文
摘要:
函数 函数是组织好的、可重复使用的、用于执行指定任务的代码块。Go语言中支持函数、匿名函数和闭包,并且函数在Go语言中属于“一等公民”。 函数定义 Go语言中定义函数使用func关键字,具体格式如下: func 函数名(参数)(返回值){ 函数体 } 其中: 函数名:由字母、数字、下划线组成。但函数 阅读全文
摘要:
Go语言中提供的映射关系容器为map,其内部使用散列表(hash)实现。 map map是一种无序的基于key-value的数据结构,Go语言中的map是引用类型,必须初始化才能使用。 map定义 Go语言中 map的定义语法如下: map[KeyType]ValueType 其中, KeyType 阅读全文
摘要:
引子 因为数组的长度是固定的并且数组长度属于类型的一部分,所以数组有很多的局限性。 例如: func arraySum(x [3]int) int{ sum := 0 for _, v := range x{ sum = sum + v } return sum } 这个求和函数只能接受[3]int 阅读全文