[Go]基础
文章平均质量分 57
Go语言基础语法
justry_deng
很多不会不懂不了解不明白,我只是一个善于记录的普通coder
展开
-
【Go基础】搭建HTTP服务端
搭建HTTP服务端搭建HTTP服务端ListenAndServe函数HandleFunc函数搭建HTTP服务端(示例)相关资料ListenAndServe函数ListenAndServe函数是用来侦听并启动服务的,它同时完成了绑定ip和端口、启动侦听、提供HTTP服务的作用。格式:func ListenAndServe(addr string, handler Handler) erroraddr:服务器地址handler:服务器提供服务的函数指针,一般填nilH原创 2021-08-08 14:18:25 · 2250 阅读 · 2 评论 -
【Go基础】搭建TCP服务端、客户端
搭建TCP服务端、客户端搭建TCP服务端、客户端TCP基础介绍服务端Listen函数客户端Dial函数搭建TCP服务端、客户端示例相关资料TCP基础介绍 TCP协议(Transmission Control Protocol)是一个安全、可靠、稳定、有序的数据报传输协议。如果说网络层(通过ip地址)解决了主机识别的问题,那么TCP协议则是(通过端口号)解决了如何识别主机上唯一一个进程的问题。 TCP还定义数据报的请求序号和确认序号,以确保消息的准确有序。 TCP通过三次原创 2021-08-08 14:17:09 · 1274 阅读 · 0 评论 -
【Go基础】文件IO的处理、延迟调用
文件IO的处理、延迟调用文件IO的处理打开、创建文件File的相关方法相关资料打开、创建文件格式:func OpenFile(name string, flag int, perm FileMode) (*File, error)name:要打开的文件名flag:打开的权限。其取值采用位指示器方式,参数值如下:O_RDONLY:只读。必选项,与O_WRONLY和O_RDWR三者选其一。O_WRONLY:只写。必选项,与O_RDONLY和O_RDWR三者选原创 2021-08-08 14:14:26 · 284 阅读 · 0 评论 -
【Go基础】并发编程
并发编程并发编程Go并发的设计相关概念启动协程同步通道channel创建channelchannel的读写单方向channel定时器相关资料Go并发的设计 Go语言最大的特色是并发,而且Go的并发并不像线程或进程那样,受CPU核心数的限制,只要你愿意,你可以启动成千上万个Goroutine协程。相关概念进程:最小的系统资源申请单位。线程:最小的执行单位,一个进程内可以启动多个线程。协程(Goroutine):协程是比线程还要小的执行单位,准确地说原创 2021-08-08 14:13:30 · 164 阅读 · 0 评论 -
【Go基础】结构体、方法封装、结构体内嵌、接口
结构体、方法封装、结构体内嵌、接口结构体、方法封装、结构体内嵌、接口结构体定义结构体结构体变量的声明、赋值方法封装结构体的组合与内嵌组合内嵌(即:继承)接口相关资料结构体定义结构体在很多语言中,面向对象编程需要使用"class"来定义类,在Go语言中并没有"class"关键字。早Go语言中,星耀面向对象编程,习惯上会先自定义一个类型,这个类型一般会以结构体的形式呈现:type TypeName struct { fieldName1 T1 field原创 2021-08-08 14:11:45 · 1232 阅读 · 0 评论 -
【Go基础】数组、切片、Map
数组、切片、Map数组、切片、Map数组array切片slice键值对map相关资料数组array格式形如:var variable_name [SIZE]variable_type注:数组的长度是固定的示例一:基操import "fmt"func main() { var arr [3]string = [3]string{"张三", "李四", "王五"} fmt.Println(arr) // 输出:[张三 李四 王五]}示例二:如果不赋值,那原创 2021-08-08 14:08:29 · 182 阅读 · 0 评论 -
【Go基础】函数
函数函数基本介绍匿名函数函数闭包相关资料基本介绍基础格式形如:func function_name ([parameter list]) [return_types] { 函数体}func:function的缩写,是定义函数的关键字。function_name:函数名。[parameter_lists]:函数列表,可以有0个或多个。[return_types]:返回值类型,可以有0个或多个返回值。示例一:基操import "fmt"func ma原创 2021-08-08 14:07:31 · 93 阅读 · 0 评论 -
【Go基础】分支与循环
分支与循环分支与循环相关提示ifif - elseswitch casefor循环模式while循环模式break打断循环相关资料相关提示if后面的小括号可以省略ifimport "fmt"func main() { // 括号写着也行,在编译时,括号会自动被剔除 if (true) { fmt.Println("JustryDeng") // 输出:JustryDeng } if true { fmt.Println("邓二洋") //原创 2021-08-08 14:06:14 · 221 阅读 · 0 评论 -
【Go基础】常用的print打印
常用的print打印常用的print打印定义枚举相关资料定义枚举Printf需要自己指定格式化Println会按照默认的值表示方法打印并且输出一个换行示例一:import "fmt"func main() { var a, b, c = 100, 3.14, "Hello World" // ******** Printf需要自己指定格式化 /* * Printf不会自动换行, 所以需要使用\n主动换行,如果需要换行的话 * %d 整型占位符原创 2021-08-08 14:04:36 · 6108 阅读 · 0 评论 -
【Go基础】指针、地址、间接赋值
指针、地址、间接赋值指针、地址、间接赋值定义枚举相关资料定义枚举在值变量前加上&,可以得到值变量的地址在地址变量前加上*,可代表内存单元,即:指向该地址的值变量的值示例一:import "fmt"func main() { var a1 = 10 p1 := a1 fmt.Println("a1 = ", a1) // 输出:a1 = 10 fmt.Println("p1 = ", p1) // 输出:p1 = 10 // 在变量前加上&原创 2021-08-08 14:03:20 · 2800 阅读 · 0 评论 -
【Go基础】定义枚举
定义枚举定义枚举定义枚举相关资料定义枚举定义枚举使用const关键字 + ()当前面某个变量使用了iota后,该变量后面的变量都回给默认加上一个iota,不论你是否显式的写了出来iota的取值从0开始iota的累加机制是在=作用于结束后累加的(即:可理解为行级累加;同一行内的iota的值是一样的)示例一:import "fmt"const ( spring = "春" summer = "夏" autumn = "秋" winter = "冬")原创 2021-08-08 14:01:52 · 2887 阅读 · 0 评论 -
【Go基础】定义常量
定义常量定义常量定义常量相关资料定义常量常量的值不可修改定义常量使用const关键字示例:import "fmt"const a = 12345func main() { const b = "咿呀咔咔" fmt.Println("a = ", a) // 输出:a = 12345 fmt.Println("b = ", b) // 输出:b = 咿呀咔咔}^_^ 整理自《Go语言区块链应用开发从入门到精通》高野 编著 ^_^ 本文已经被原创 2021-08-08 14:00:40 · 659 阅读 · 0 评论 -
【Go基础】定义变量
定义变量定义变量定义变量相关资料定义变量若变量只定义而未赋值,默认会按照零值进行初始化,如整数型初始化为0,字符串初始化为空字符串""定义变量使用var关键字方式一:一般用法 var {变量名} {类型}// 声明时赋值var a int32 = 12345fmt.Println("Hello World~ \t", a) // 输出:Hello World~ 12345// 声明后赋值var a int32a = 12345fmt.Println(原创 2021-08-08 13:58:58 · 290 阅读 · 0 评论 -
【Go基础】数据类型
数据类型数据类型布尔型整型浮点型、复数类型其他类型相关资料布尔型对应的值为true、false整型类型取值范围描述int8-128~127有符号8位整型int16-32768~32767有符号16位整型int32-2147483648~2147483647有符号32位整型int64-9223372036854775808~9223372036854775807有符号64位整型int32位系统代表int32,6原创 2021-08-08 13:56:56 · 410 阅读 · 1 评论