1. 自定义返回一个错误信息:return errors.New("invalid action”)

2.golang这种所有被大括号包裹起来的语句都不能在外面被调用。例如:if xxx{},switch xxx{},for xxx{},需要先在外面定义:

var name := ""
if xxx{
name="zhangsan"
}else{
name="lisi"
}
println(name)

3. 跨包调用,函数名一定要大写,相当于PHP的public,例如:db.GetUserName();

4. 判断Map中是否存在某个key:

  _, ok := query["name"]
if ok {
delete(query,"name")
}

5. 删除Map的一个key,使用delete(相当于PHP的unset):delete(query,"name")

6. 数组转换为字符串:strings.Join;字符串分割成数组:strings.split
 
7. 函数返回多个值,如果一个都不想接收,可以忽略等号前面的,即:func(),而不用写成: _, _ := func()
 
8.创建 map:
query:=make(map[string][]string)
query["id"] = []string{“aaa”,”bob”,”ccc"}

9. int64转换为字符串:

func Int642Str(num int64) string {
return strconv.Itoa(int(num))
}

10. 一些数据类型转换的汇总:

data := fmt.Sprintf("%f", 33.3) //小数转换为字符串 %f
data := fmt.Sprintf("%d", ) //整数转换为字符串 %d
data := fmt.Sprintf("%v", 33.3) //小数或者整数都通用 %v
sW := uint32(apiReq.ScreenWidth) //int32转换为uint32 【字符串转换为float】
lat, _ := strconv.ParseFloat(apiReq.Lat, )
fmt.Println(lat) //float64
fmt.Println(float32(lat)) //float32 【字符串转换为int】
int,err:=strconv.Atoi(string) #string到int
int64, err := strconv.ParseInt(string, , ) #string到int64
string:=strconv.Itoa(int) #int到string
string:=strconv.FormatInt(int64,) #int64到string 【说明】
d:数字、 s:字符串、f:float、v:所有

11. 拼接字符串:

fmt.Sprintf("%v", apiReq.Lat) + "," + fmt.Sprintf("%v", apiReq.Lng) 
#可以简写为:
fmt.Sprintf("%v,%v",apiReq.Lat,apiReq.Lng)

12. 关于iota

const (
AA = iota
BB
CC
DD
)
上面的代码 AA=iota,表示从0开始,那么下面的BB=,CC=,DD=
如果是 AA = -iota,那么BB=-,CC=-,DD=-
如果是 AA = iota+,那么BB=,CC=,DD=
13.判断一个数组类型的字段是否为空数组,len(value)==0
if len(fRespJson.ImgUrls) == {

}

14. 获取当前日期(2006-01-02 15:04:05 是固定数值):

date := time.Now().Format("2006-01-02 15:04:05")
fmt.Println(date)
os.Exit()

15.打印输出

打印输出:fmt.Println() 或者 println()
终止程序:os.Exit()
打印数据结构:spew.Dump(string(buf)) //类似于PHP的var_dump

Visual Code 配置:

【基本配置】
// 将设置放入此文件中以覆盖默认设置
{
"window.zoomLevel": ,
"editor.fontSize": ,
"go.gopath": "/Users/renxing/Desktop/go",
"go.goroot": "/usr/local/go"
"workbench.editor.enablePreview": false #设置新打开的文件标签不覆盖之前的(很有用!!)
} 【vim .zshrc】
source $ZSH/oh-my-zsh.sh
source /etc/profile
 
 
 
 
 

Go经验总结----2017.07的更多相关文章

  1. 日本IT行业劳动力缺口达22万 在日中国留学生迎来就业好时机 2017/07/18 11:25:09

    作者:倪亚敏 来源:日本新华侨报 发布时间:2017/07/18 11:25:09     据日本政府提供的数据,日本2018年应届毕业生的“求人倍率”已经达到了1.78倍.换言之,就是100名大学生 ...

  2. CVTE后台开发实习生岗位面试经验(2017.3)

    3月份我在看准网发布过这篇面经,现在转过来.原文链接:http://www.kanzhun.com/gsmsh10433357.html 投递岗位是web后台实习生 做完笔试后一天对方即发来面试通知 ...

  3. 2017.07.07【NOIP提高组】模拟赛B组

    Summary 因为某种无法抗拒的原因,今天没有打比赛,所以也就没有那种心态.今天的题目有状压DP和二分,这套题不难也不简单,适中,适合我这种渣渣来做.在改题时,发现了许多问题.我连欧拉函数的计算都记 ...

  4. Work 3(工作类) (2017.07.01)

  5. 2017.07.14【NOIP提高组】模拟赛B组

    Summary 这次比赛因为迟到了,少了很多时间,也受到了相应的惩罚,这是好的,是个标记牌,警醒着我.这次比赛的题目很难,也就是说,大家的得分都很低,总的来说,收获还是很大的,因为有非常多的技巧被掌握 ...

  6. 2017.07.11【NOIP提高组】模拟赛B组

    Summary 今天的比赛打得还不错,第一题被同桌灌输的贪心,纯模拟洗脑了,然后steal的看了一下,发现怎么也对不了,一直在检查.最后10分钟才找出反例,推出动态规划方程,没有想到怎么转移,比赛就结 ...

  7. 2017.07.10【NOIP提高组】模拟赛B组

    Summary 今天题目总体不是难,但是分数很低,只有100+10+30,其中第二题还是以前做过的,第一题设计数论,而且以前做过同一个类型的题目,比赛推了很长时间.第三题时以前做过的原题,是贪心没学好 ...

  8. 2017.07.09【NOIP提高组】模拟赛B组

    Summary 今天放假,比赛于是就没有打了,但是看了一下题,发现都挺简单了,不想码~╮(╯▽╰)╭懒虫一条.最后一题居然做过原题.这次比赛让我对并查集“刮目相看”,对贪心感到“前途无量”,觉得树形D ...

  9. 2017.07.06【NOIP提高组】模拟赛B组

    Summary 今天比赛感觉题目很奇葩,都可以用许多简单方法来做,正确性都显然,当然也有点水,也就是说是考我们的数感和数学知识,而程序,只是代码的体现. 这次的时间安排感觉不错,因为很快就打完最后一道 ...

随机推荐

  1. Laravel5.5 的 Homestead 开发环境部署

    首先明白以下几个概念 VirtualBox  -- Oracle 公司的虚拟机软件, 能运行在当前大部分流行的系统上; Vagrant 提供一种命令行接口, 允许自动化安装虚拟机, 并且因为是脚本编写 ...

  2. 数据结构与算法(c++)——双缓存队列

    "双缓存队列"是我在一次开发任务中针对特殊场景设计出来的结构.使用场景为:发送端持续向接收端发送数据包--并且不理会接收端是否完成业务逻辑.由于接收端在任何情况下停止响应即可能产生 ...

  3. Java泛型类和泛型方法

    java编程思想说道: 泛型类是应用在整个类上,但同时可以在类中包含参数化方法,而这个方法所在的类可以是泛型,也可以不是泛型,也就是说是否有泛型方法,与其所在的类是否是泛型类没有关系. 泛型方法是的该 ...

  4. mybatis_SQL缓存(5)

    <settings> <!-- 这个配置使全局的映射器启用或禁用缓存 --> <setting name="cacheEnabled" value=& ...

  5. Python-Blog2-编写Web app 骨架

    撸代码之前让我们先来看几个概念: 什么是协程(Coroutine)? 假设现在有两个子程序,子程序A和子程序B: def A(): print('1') print('2') print('3') d ...

  6. winform打开本地html页面

    有时候为了提高开发效率和后期可维护性,把cs里面嵌套了远程网页,这样方便后期升级.比如,美图秀秀,qq音乐PC都嵌套了本地和远程网页.在页面拖入控件System.Windows.Forms.WebBr ...

  7. jquery判断数据类型和相同字符串不相等

    typeof object返回object对象数据类型 encodeURIComponent(str)//可把字符串作为URI 组件进行编码. 若str1和str2字符串数值相同,encodeURIC ...

  8. java URL和URLConnection

    */ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...

  9. sed标签

    转载 b label ,无条件跳转到标签label,如果label没有指定,跳转到命令的结尾 t label ,如果最后一次输入的最后一个 s/// 子命令执行成功,跳转到标签label,如果labe ...

  10. CSS——选择器2

    1.子选择器 (1).用于指定标签元素的第一代子元素,使用">"号. (2).例子: <style type="text/css"> .foo ...