golang知识精要(二)】的更多相关文章

类型 go是**静态类型**语言,不能在运行期改变变量类型. 变量定义 使用var定义变量,自动初始化为零值: 如果提供初始值,可省略变量类型: 函数内部可使用:=定义变量. var x int // 自动初始化为0 var f float32 = 1.6 var s = "abc" func main(){ x := 123 } 多变量 可一次定义多个变量: 多变量赋值时,先计算所有相关值,然后再从左到有依次赋值. var x, y, z int var s, n = "a…
一.第一章 命令行参数可通过os.Args访问,os.Args是切片 切片遵循左闭右开原则,如sl[1:3]不包含下标为3的元素 for循环两种方式 方式一: for initial; condition; post { } 三部分中任一部分都可以省略 方式二: for idx, val := range os.Args[1:] { } 字符串连接 var s string = "a" + "b" strings.Join([]string{"a"…
java知识精要(一) 集合 Iterable v.s. Iterator 两者都是接口,在Collection继承的是Iterable. Iterable表达了集合具备迭代访问的能力,而Iterator表示实现,可以从小到大也可以从大到小. https://zhuanlan.zhihu.com/p/52366312 另外,我们在遍历集合时,尽量用iterator这种方式,可以在遍历中,修改集合,参考 使用Iterator需注意两点:a. 获取到Iterator变量后,仅能遍历一遍; b. it…
本系列主要翻译自<ASP.NET MVC Interview Questions and Answers >- By Shailendra Chauhan,想看英文原版的可访问http://www.dotnettricks.com/free-ebooks自行下载.该书主要分为两部分,ASP.NET MVC 5.ASP.NET WEB API2.本书最大的特点是以面试问答的形式进行展开.通读此书,会帮助你对ASP.NET MVC有更深层次的理解. 由于个人技术水平和英文水平也是有限的,因此错误在…
Golang中的坑二 for ...range 最近两周用Golang做项目,编写web服务,两周时间写了大概五千行代码(业务代码加单元测试用例代码).用Go的感觉很爽,编码效率高,运行效率也不错,用了beego,avro,xorm,反射.今天和前端联调遇到了一个bug,发现踩到了第二个坑.踩坑不怕,踩过一次就不会再犯了,这就是实践的好处. 坑是这样的:数据采用avro描述,用xorm存取到mysql:对于有嵌套的数据结构,avro生成的go结构体以指针切片的形式声明,xorm Find方法采用…
golang反射应用(二) package test import ( "reflect" "testing" ) //定义适配器 func TestReflect(t *testing.T){ //声明回调函数 call1 := func(v1,v2 int){ t.Log(v1,v2) //1 2 } call2 := func(v1,v2 int,s string){ t.Log(v1,v2,s) //1 2 test2 } //定义全局变量 var ( fu…
golang 编码 json 还比较简单,而解析 json 则非常蛋疼.不像 PHP 一句 json_decode() 就能搞定.之前项目开发中,为了兼容不同客户端的需求,请求的 content-type 可以是 json,也可以是 www-x-urlencode.然后某天前端希望某个后端服务提供 json 的处理,而当时后端使用 java 实现了 www-x-urlencode 的请求,对于突然希望提供 json 处理产生了极大的情绪.当时不太理解,现在看来,对于静态语言解析未知的 JSON…
通过两种方式安装 一.通过apt-get安装1.安装 sudo apt-get install golang 2.设置GOPATH变量 GOPATH是扩展库的目录,Go先搜索标准库目录,然后搜索GOPATH库目录,所有的非标准库都放在GOPATH下.以GOPATH为“/usr/local/go”目录为例子: (1)把export GOPATH=/opt/go加入到~/.bashrc文件的最后.(2)source ~/.bashrc 重新加载配置 这样就加好了GOPATH.注意:apt-get命令…
github: https://github.com/ZhangzheBJUT/blog/blob/master/nil.md 一 接口与nil 前面解说了go语言中接口的基本用法,以下将说一说nil在接口中的使用. 从上面一节我们知道在底层,interface作为两个成员实现:一个类型和一个值. 该值被称为接口的动态值, 它是一个随意的详细值.而该接口的类型则为该值的类型.对于 int 值3, 一个接口值示意性地包括(int, 3). 仅仅有在内部值和类型都未设置时(nil, nil),一个接…
第2课 检索数据 2.1 SELECT 语句 用途:从一个或多个表中检索数据信息 关键字:作为SQL组成部分的保留字.关键字不能用作表或列的名字. 为了使用SELECT检索表数据,必须至少给出两条信息: 想选择什么, 从什么地方选择. 2.2 检索单个列 SELECT prod_name FROM Products; -- 分析:利用 SELECT 语句从 Products 表中检索一个名为 prod_name 的列. -- 所需的列名写在 SELECT 关键字之后,FROM 关键字指出从哪个表…