博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Go圣经-学习笔记入门
阅读量:6442 次
发布时间:2019-06-23

本文共 1107 字,大约阅读时间需要 3 分钟。

hot3.png

Hello,world

Go语言不需要在语句或者声明的末尾加上分号,除非上一上有多条语句。实际上,编译器会主动把特定符号后的换行符转换为分号,因此换行符添加的位置会影响Go代码的正确解析。

下面这个例子,行尾的,使得编译器不会添加分号,则这个fmt.Printf是一个完整的行,这样写也比较美观。你不能把,放在下一行。

fmt.Prinf("hello, %s。Welcome to %s",     name, country)

如果你想要一个Linux VIM编辑器下集成一个IDE,你需要安装一个vim-go的插件。如果安装ok,则会像我的环境一样,截图如下:

VIM-GO测试结果

声明一个变量有几种方式:

temp:=""var temp string = ""var temp = ""var temp string

重点强调第一方式,它最简洁,但只能用于函数或者方法内部,不用应用在包级别的变量声明

package mainimport (    "fmt")temp:=""func main(){    fmt.Println(temp)}

编译无法通过,报错信息 expected declaration, found 'IDENT'

注意事项

运用go语言编程时,开发人员应该尽量使用官方标准库,避免重复造轮子, 提高开发效率,同时又运行的程序在时间和空间复杂度上有比较好。

下面有一个关于拼接字符串的DEMO:

package mainimport (    "fmt")func main(){    s, sep:= "", ""    // 第一种方式:    for _, arg:= os.Args[1:]{        s+=sep+arg        sep = " "    }    fmt.Println(s)        // 使用官方标准库的方式    fmt.Println(strings.Join(os.Args[1:], " "))}

贴出官方strings.Join标准库方法的部分代码实现:

func Join(a []string, sep string) string{    // 省略部分代码片段    n:= len(sep)*(len(a)-1) // sep所占用空间的整个长度    for i:=0;i

总结:使用标准库,节约了内存空间和时间。它是一次性分配内存空间,不需要反复分配和释放内存,内存分配可能会发生内存页大小不够,导致缺页的情况,非常耗时

转载于:https://my.oschina.net/u/3287304/blog/1553766

你可能感兴趣的文章
EZ GUI Button和Checkbox创建
查看>>
指针[收藏]
查看>>
审批流程设计方案-介绍(一)
查看>>
Python多进程编程
查看>>
使Eclipse下支持编写HTML/JS/CSS/JSP页面的自动提示。
查看>>
IIS_右键点击浏览网站没有反应
查看>>
POJ训练计划1035_Spell checker(串处理/暴力)
查看>>
Makefile 使用总结【转】
查看>>
一起学微软Power BI系列-官方文档-入门指南(4)Power BI的可视化
查看>>
Android.util.Log 关于Android开发中打印log
查看>>
转:Python yield 使用浅析 from IBM Developer
查看>>
仪表板颜色
查看>>
NodeJS、NPM安装配置步骤(windows版本)
查看>>
mysql oom之后的page 447 log sequence number 292344272 is in the future
查看>>
chrome禁用某个网站js脚本的执行
查看>>
数组排序 和 二分法查找
查看>>
MongoDB C Driver Building on Windows
查看>>
备忘zookeeper(单机+伪集群+集群)
查看>>
无需编译、快速生成 Vue 风格的文档网站
查看>>
AtomicBoolean介绍与使用
查看>>