
Go基础学习
文章平均质量分 57
悠悠豆
这个作者很懒,什么都没留下…
展开
-
Go语言基础:array、slice、make和new操作、map
array数组声明和赋值go的数组声明跟C语言很相似,除了数组类型放在变量名后面【这点跟变量的声明一样】。 数组的定义格式://一维数组var 数组名[n] 数组类型 //需要注意的是:'[n]'可以写成'[...]',go会自动根据元素个数来计算长度,//我猜应该是编译的时候计算的吧//二维数组var 数组名[2][n]int{[n]数组类型{..},[n]数组类型{}}数组的声明和赋值:原创 2016-08-16 19:52:24 · 11906 阅读 · 0 评论 -
Go语言基础:并发
并行与并发 理论式的概念: 并行:多件事在同一时刻发生。 并发:多件事在同一时间间隔发生。 5岁小孩都能看懂的解释: 摘自:http://www.cnblogs.com/yangecnu/p/3164167.html 和 Concurrent and Parallel Programming 上文如果用程序员的语言来讲,CPU处理器相当于上图的咖啡机的角色,任务相当于队列中的人。 并发与并原创 2016-09-21 08:52:00 · 3156 阅读 · 0 评论 -
Go语言基础:深入理解 struct 内嵌 inteface
对上一篇文章用到的匿名接口的深入理解:http://blog.youkuaiyun.com/uudou/article/details/52456133 对于 struct 内嵌 inteface 的使用,我是研究好半天才搞懂,这里记录下我疑问:1. 如何更好的理解匿名接口// 匿名接口可以被用作变量或者结构属性类型type Man struct { gender interface {原创 2016-09-16 18:08:29 · 8306 阅读 · 0 评论 -
Go语言基础:Interface
转:http://xhrwang.me/2014/12/29/golang-fundamentals-8-interface.html我们知道 Golang 中没有 class 的概念,而是通过 interface 类型转换支持在动态类型语言中常见的 鸭子类型 达到运行时多态的效果。官方文档 中对 Interface 是这样定义的:An interface type specifies a meth转载 2016-09-07 07:38:46 · 17328 阅读 · 1 评论 -
Go语言基础:method
我们在C语言中,struct中声明函数,而Go中则不能再struct中声明函数。而是采用另外一种形态存在,Go中叫method。method的概念method是附属在一个给定的类型上,语法和函数的声明语法几乎一样,只是再func后面增加了一个recevier(也就是method所依从的主体)method的语法格式func (r ReceiverType) funcName(parameters) (原创 2016-09-02 15:47:10 · 3782 阅读 · 0 评论 -
Go语言基础:struct
跟C语言或其它语言一样,也有结构体struct。C语言中用关键词typedef来给结构体定义,Go中用的都是type。struct语法格式type typeName struct {...}例如:type person struct { name string age int}struct声明var P personP.name = "S原创 2016-09-01 14:32:15 · 2258 阅读 · 0 评论 -
Go语言基础:if,goto,for,switch
Go的if,for,switch跟C的区别有过C基础的人,都知道if、for、switch的条件语言都是有括号的。基本格式:if(条件判断语言) {}for(语句1;语句2;语句3) {}switch(语句){}在go中,这些语法规则跟C还是有差别,概括为一句话就是去掉了括号。语法规则如下:if 语句 {}for 语句1;语句2;语句3 {}//跟C一样,这三个语句可以省掉任何一个语句swi原创 2016-08-22 09:17:22 · 1456 阅读 · 0 评论 -
Go语言基础:函数
函数是程序的核心部分,所有的程序都是由一个一个的函数组成的。函数声明几种格式func funcName(input1 type1, input2 type2) (output1 type1, output2 type2) {//这里是处理逻辑代码//返回多个值return value1, value2}func funcName(input1 type1, input2 type2)(typ原创 2016-08-31 16:02:44 · 680 阅读 · 0 评论 -
Go语言基础:make,new, len, cap, append, delete方法
前面提到不少go的内建函数,这篇文章学习下如何使用。。make先拿 make 开刀,可是一开始我就进入了误区,因为我想先找到他的源码,先是发现 src/builtin/builtin.go 中有 func make(Type, size IntegerType) Type ,可是这里只有两个参数,跟我所了解的 make 是个可变参数不太一样,于是我继续搜索源码包是否还有其它 make 函数原型的声明原创 2016-08-19 08:25:25 · 23353 阅读 · 7 评论 -
Go语言基础:变量,常量,Boolean,字符串,iota枚举
定义变量格式:var 变量名 变量类型Go变量声明很奇怪,把类型放在变量名后面,这点与我们常用的C、JAVA等不一样,没办法,得习惯。Go对于已声明但未使用的变量会在编译阶段报错,要求好严格,但的确应该支持。 单个变量的声明和赋值var a int //变量的声明a = 123 //变量的赋值var b int = 123 //变量的声明,同时赋值var c = 321 //变量的声明,同时赋原创 2016-08-15 14:56:33 · 2792 阅读 · 0 评论 -
你好,Go
学习教程:Go Web编程.pdf,点击免费下载。 学习视频:网易的云课堂:Go编程基础Go基础系列文档更多的是记录我的学习点滴,增强自己的学习效果,可能是很基础的东西,希望别喷我哦。在上一篇Go环境安装我们成功安装了Go环境,接下来的一步就是写一个hello world的程序感受感受下Go语言的魅力。上一篇Go环境安装中,我们设置了GOPATH的工作目录,先来看看我的目录结构。jindg@nc:原创 2016-08-12 11:14:17 · 802 阅读 · 0 评论 -
Go环境安装
PC环境:Ubuntu 15.10 64位机先看张这个月的编程语言排行榜,会发现C下降的特别快,而移动应用和web编程语言都在逐渐上升,其中go上升最明显。所以我决定在学习java的同时也准备学go。给自己加油。 Go安装Go支持三种安装方式:Go源码安装、Go标准包安装、第三方工具安装。 这里只讲下标准安装。下载访问https://golang.org/dl/,下载go1.6.3.linux原创 2016-08-11 11:10:42 · 1765 阅读 · 0 评论 -
Go语言基础:变量赋值顺序
在阅读server.go时,意外的发现有这么两句赋值语句是其它语言不允许的语法。如下:1915 // DefaultServeMux is the default ServeMux used by Serve.1916 var DefaultServeMux = &defaultServeMux19171918 var defaultServeMux ServeMux 不难发现的default原创 2016-10-02 20:33:25 · 2543 阅读 · 0 评论