![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
GO语言
孺子牛牛
这个作者很懒,什么都没留下…
展开
-
一起来学GO语言1--GO语言环境搭建
闲来没事发现GO语言火了,所以自学一下GO语言,GO语言博客的写作过程就是我自己学习的过程,记下来当作笔记,也与大家分享。首先我们先将GO的环境搭建起来,这里所有的操作都是在windows操作系统上进行。1、下载GO语言安装包下载路径:https://golang.google.cn/dl/2、安装GO语言安装包安装自己安装,这个就不说了3、下载GO语言开发工...原创 2018-11-13 17:45:39 · 231 阅读 · 0 评论 -
一起来学GO语言9--GO语言中的goroutine
在GO语言中,每一个并发执行的活动称为goroutine。这个概念听起来有些抽象,通俗点来讲,goroutine就是每一个并发执行的函数或者方法。一个goroutine通过go语句来创建。程序启动时通过main函数进行,main函数就是主goroutine。需要注意的是,如果主goroutine执行完成时。其它goroutine直接终结,不管其有没有执行完毕。下面通过一段代码来看一下:// ...原创 2018-12-03 14:42:36 · 202 阅读 · 0 评论 -
一起来学GO语言8--一个简单的聊天程序
这篇博客我们来写一个socket小程序,模拟一个简单的聊天程序server端:// stydy project main.gopackage mainimport ( "fmt" "log" "net" "time")func startServer() { listener, err := net.Listen("tcp", "127.0.0.1:12031&quo原创 2018-11-30 17:16:13 · 578 阅读 · 0 评论 -
一起来学GO语言11--简单数据库操作mysql
这里来做一个数据库操作,使用的数据库是mysql数据库,版本5.7,开发环境win10,开发工具liteIDE x35.1这里先来说一下使用的两个外部包github.com/Unknwon/goconfig:用来读取.ini文件github.com/go-sql-driver/mysql:数据库补充包首先引入外部引用包,这里由于是自学新手,刚开始一直引入不了,研究了好久才搞定,所以...原创 2018-12-04 15:55:25 · 276 阅读 · 0 评论 -
一起来学GO语言7--GO语言接口interface
GO语言中的接口相比较java而言简单了许多,GO语言的接口独特的地方在于它是隐式实现的。对于一个具体的类型而言,它无需声明具体实现了哪些接口,只要它实现了接口对应的方法,那么它就实现了该接口。如果一个类型要实现一个接口,那么它必须实现接口中所有的方法。下面我们看一段代码:// stydy project main.gopackage mainimport ( "fmt" "str...原创 2018-11-29 16:54:28 · 160 阅读 · 0 评论 -
一起来学GO语言4--GO语言中的map和struct
GO语言中map和struct是两个非常常用的数据类型,这里单独来学习1、mapGO语言中map的结构是map[k]v,map中所有的k类型必须相同,所有v的类型也必须相同,但是k和v的类型没有要求必须相同,看下面一段代码,我们使用三种方法来创建一个map:arr := make(map[string]int) //第一种使用makearr:=map[string]int{"a"...原创 2018-11-15 11:08:00 · 4091 阅读 · 0 评论 -
一起来学GO语言6--GO语言函数和方法
这篇博客一起学习一下函数和方法,一般来说这两个是一样的,但是在GO语言里面,我理解是函数就是能被调用的方法,没有固定的绑定在那个类型上面,而方法是绑定在某个特定类型上的函数。这是我的理解,如有错误,请大家指正。下面我们先从函数起。1、函数的多值返回我们知道从map中取值得时候,返回的是两个结果,我们使用range遍历的时候,返回的也是两个结果,在GO语言里面支持函数的多值返回,下面我们自己...原创 2018-11-16 16:37:33 · 914 阅读 · 0 评论 -
一起来学GO语言3--GO语言数据类型
GO语言中的数据类型很多,有整型、浮点型、复数型、布尔型、字符型、数组、map等等,这里说几种我认为比较有意义的。1、字符串字符串是一个不可变的字符序列。它可以包含任何数据。内置函数lens := "abcdef"fmt.Println(len(s))得到结果:6子串生成操作 str := s[i:j],i为起始位置,j为结束为止,结果是一个j-i的字符串s :=...原创 2018-11-14 16:08:24 · 196 阅读 · 0 评论 -
一起来学GO语言2--GO语言基本语法
GO语言和其它语言一样,都是从小的组件构建而来的,由变量、表达式、基本类型来构成的1、可访问性一个声明实体如果在函数的外部,那么它对整个包可见。实体的第一个字母的大小写决定其是否挎包可见。如果第一个字母小写,那么包外不可见,如果第一个字母大写,那么是包外可见的。在GO语言中一般使用“驼峰式”命名的风格。下面我们写一些代码来验证下包的可见性问题。 这里创建三个go文件,main.go、t...原创 2018-11-14 11:05:10 · 681 阅读 · 0 评论 -
一起来学GO语言5--GO语言练习
前面学习了go的基础知识,这里做一些练习,来巩固我们所学知识,请看下面题目1、字符串去除空格和换行符2、判断一个数是偶数3、寻找100以内的所有素数4、99乘法口诀表5、杨辉三角6、将学生成绩分为A(90分以上)、B(60-90)、C(小于60),使用switch语句编写7、定义一个结构体,包含X和Y两个坐标,带入函数,求两点之间的距离8、使用iota常量生成器,生成一个星期的常...原创 2018-11-15 17:27:32 · 565 阅读 · 2 评论 -
一起来学GO语言10--GO语言中的通道channel
通道是什么,通道就是goroutine之间的通道。它可以让goroutine之间相互通信。通道通过语句:ch := make(chan int) 来进行创建,是int类型也可以是其它类型。通道数据的发送和接收通过<-来进行。func main() { ch := make(chan int) //创建一个通道 go func() { ch <- 1 //给通道发送值 }...原创 2018-12-03 17:07:57 · 564 阅读 · 0 评论