go语言学习杂记
go语言在windows下下载安装
推荐在golang中国下载 http://www.golangtc.com/download
安装....
go环境变量与工作目录
根据约定GOPATH需要建立3个目录
bin(存放编译后生成的可执行文件)
pkg(存放编译后生成的包文件 .a)
src(存放项目源码 比如:.go .c .h .s等)
使用go env查看环境
常用命令
go get:获取远程包(git或hg(google code))
go run :直接运行程序
go bulid :测试编译
go fmt:格式化源码
go install:(编译包文件并编译整个程序)
go test :运行测试文件(比如aa_test.go)
godoc:查看文档(chm手册 )
godoc fmt Println
构建本地官网
godoc -http=:8080
Go内置关键字
break default func interface select
case defer go map struct chan
else goto package switch const fallthrough
if range type continue for import return
var
|
GO程序一般结构 通过import关键字来导入其它非main包 |
包的导入
import "fmt"
import "os"
import "io"
或者
import (
"fmt"
"os"
"io"
)
导入包之后,就可以使用<PackageName>.<FuncName>
调用包中的函数
如果导入包之后 未调用其中的函数或者类型 将会报出编译错误
imported and not used: "io"
package 别名
当使用第三方包时,包名可能会非常接近或相同,
此时就可以使用别名来进行区别和调用
import (
ftd "fmt"
)
或 import ftd "fmt"
fmt.Println("hello word")
省略调用
package main
import . "fmt"
func main() {
Println("hello world,你好世界! ");
}
有别名 必须使用别名
可见性规则
Go语言中,使用大小写来决定 该常量,变量,类型
接口,结构或者函数是否可以被外部包所调用
根据约定 函数名首字母小写 即为private
首字母大写 即为public
导入多个包可以简写
声明多个变量,全局变量或一般类型(非接口,非结构)也可以
package main
import "fmt"
const (
PI=3.14
KEY=123
SEC=2
)
var (
a="hk"
b="bbc"
)
type (
name string
age int
sex int
)
func main() {
fmt.Println("hello world,你好世界!"+a+"\r\n"+b);
}
go语言学习杂记的更多相关文章
- Java编程思想学习杂记(1-4章)
程序流程控制 移位运算符 移位运算符面向的运算对象是二进制的位,可单独用它们处理整数类型.左移位运算符(<<)能将运算符左边的运算对象向左移动运算符右侧指定的位数(在低位补0)." ...
- Thinking in Java学习杂记(5-6章)
Java中可以通过访问控制符来控制访问权限.其中包含的类别有:public, "有好的"(无关键字), protected 以及 private.在C++中,访问指示符控制着它后面 ...
- C语言学习 第八次作业总结
本次作业其实没有新的内容,主要就是复习上一次的一维数组的相关内容.冯老师布置了5道题目,其中涉及到一些比较简单的排序或者是查找的方法.因为数据很少,所以直接使用for循环遍历就可以了. 关于本次作业, ...
- C语言学习 第七次作业总结
C语言学习 第七次作业总结 数组可以分为数组和多下标数组(在传统的国内C语言书本中,将其称为二/多维数组). 数组名称 在之前的课程中,大家应该都有印象,对于int a这样的定义,会为变量 a 声明一 ...
- 技能收获与C语言学习
你有什么技能比大多人(超过90%以上)更好? 我会的东西很多,喜欢的东西太多,但是很遗憾广而不专,会而不精.学了很多东西我都是为了娱乐,因为以前我们那里过于强调学习,很多爱好也都被扼杀在摇篮里.我觉得 ...
- 一份关于Swift语言学习资源的整理文件
一份关于Swift语言学习资源的整理文件 周银辉 在这里下载 https://github.com/ipader/SwiftGuide
- go语言学习笔记
Go语言学习基本类型Bool 取值范围:true,false (不可以用数字代替)Int/uint 根据平台可能为32或64位int8/uint8 长度:1字节 取值范围-128~127/0~255b ...
- 20155206赵飞技能获取经验,C语言学习感想与对JAVA的学习目标
自己较强的技能获取经验. 1:实话实说我自己是没有哪个技能可以超过90%的人的,只有自认为做的还可以的一些事情,例如打篮球,office软件的应用,一百米跑.至于其他方面就是很平庸了. 2:经验主要有 ...
- HTML语言学习笔记(会更新)
# HTML语言学习笔记(会更新) 一个html文件是由一系列的元素和标签组成的. 标签: 1.<html></html> 表示该文件为超文本标记语言(HTML)编写的.成对出 ...
随机推荐
- 通过wifi连接android设备的方法
[转自]http://blog.csdn.net/kuanxu/article/details/7444874 最近由于要在另外一台android设备上调试代码,在本机PC上查看其log.两台机器离的 ...
- python技术
要把zabbix弄成自动监控,下发任务,部署,事件恢复得功能
- 如何在MyEclipse中更改servlet模板 Jsp模板
http://blog.csdn.net/sjw890821sjw/article/details/6995190 刚换上Myeclipse9.0,结果要修改servlet模板的时候不像Myeclps ...
- java 在Excel中插入图片 POI实现
一.POI简介 Jakarta POI 是apache的子项目,目标是处理ole2对象.它提供了一组操纵Windows文档的Java API 目前比较成熟的是HSSF接口,处理MS Excel(97- ...
- UnsupportedOperationException
java不支持该功能,多见于, Arrays.asList() ,然后使用remove和add方法. 因为asarraylist的集合是一个转化来的集合,它的大小是固定的.不能进行长度修改. ...
- UVALive 4270 Discrete Square Roots
题目描述: 在已知一个离散平方根的情况下,按照从小到大的顺序输出其他所有的离散平方根. 在模n意义下,非负整数x的离散平方根是满足0<=r<n且r2=x(mod n)的整数r. 解题思路: ...
- Linux CentOS服务启动
Linux CentOS下如何确认MySQL服务已经启动 Linux CentOS一般做为服务器使用,因此,MySQL服务应该随开机自动启动的.正常情况下,查看开机自动启动的服务使用chkconf ...
- Agilent RF fundamentals (5)
2考虑两个因素 3 RX 4 TX RX switch use Duplexer
- Android数据库代码优化(1) - 从Google的数据库guide说起
假如我们没有任何在Android上使用SQLite的经验,现在要开始在工作中用SQLite存储一些数据.OK, 我们去看google的官方培训文档吧,http://developer.android. ...
- Freemarker 自定义标签 实现TemplateDirectiveModel
1 自定义标签需要实现TemplateDirectiveModel这个接口中的execute方法 实例代码如下 public class UserListDirective implements Te ...
