Go语言的起源:
http://baike.baidu.com/subview/5897/7068513.htm#viewPageContent
环境搭建:
1. 下载地址:https://studygolang.com/dl
选择最新包,当前版本是: go1.14.3.linux-amd64.tar.gz
1 |
wget https://dl.google.com/go/go1.14.3.linux-amd64.tar.gz |
2. 将下载的二进制包解压至 /usr/local 目录。
1 |
tar -C /usr/local -xzvf go1.14.3.linux-amd64.tar.gz |
3. 将 /usr/local/go/bin 目录添加至PATH环境变量
1 |
export PATH=$PATH:/usr/local/go/bin |
P.S. 我到这一步就成功了,然后可以执行 go version 看到版本号。 我用yum install go 的方式安装失败了。
学习实例(一)——Hello World
Linux下编写方法:
1 |
vim hello.go |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
package main import ( "fmt" "os" ) func main() { target := "World" if len(os.Args) > 1 { target = os.Args[1] } fmt.Println("Hello", target) } |
以上是一段简单的Go语言,HelloWorld代码。
代码解析:
Go的注释风格:C++风格。 //注释内容 或者 /*注释内容*/
所有的Go语言代码只能放置在一个包(packages)中。//包的概念来自于Java…可以查阅。类似的是C++的名字空间
每一个Go程序必须包含一个main包以及一个main()函数。
1.package main //表明当前文件属于main包。
3-6.import… // 导入相关包。
//只有需要用到的包才需要导入,导入的包没有使用,则会导致编译失败。
//Go语言的语句和大多数语言一样,使用分号(;)分隔开,但是一般情况下不用我们手动添加,编译器会自动完成这些工作,除非需要在一行中写多条语句。
8.func main() //main函数
//Go语言的函数 和 方法 都以关键字 func 进行定义(function)。//似乎int void 已经远去~
9.target := “World” //使用 := 操作符,声明并初始化了一个字符串变量。
//Go语言虽然是一门静态强类型的语言,但是在使用 := 操作符时,Go语言会根据符号右边的值推导出符号左边变量的类型。//有点类似于Python
10.len(os.Args) //是一个字符串的切片,切片内容是传递给Go程序的参数. len()是计算切片长度的函数.
//切片(slices):切片是一个可以动态增长的数组,可以通过len()内置函数计算切片的长度,通过slice[n]访问切片中的第n个元素。slices[n:]返回从第n个元素到最后一个元素的切片
//和C++的 Vector Python 中的切片 类似。
11.target = os.Args[1] //赋值语句
13.fmt.Println(“Hello”, target) //打印输出,不解释(像Java)
Linux 下运行方法:
1.直接运行:
1 |
go run hello.go |
以上命令直接让Go源文件运行,不会生成任何可执行文件,可以快速查看源代码执行效果。
2.编译链接:
1 2 |
go build hello.go ./hello Xiong |
以上命令解析:
1. go build hello.go // 编译和链接hello.go代码,并且生成了可执行文件hello。
2. ./hello Xiong //接着我们运行hello程序,并传递了一个参数给它,可以看到程序正常运行并且如期输出了结果。
以上即是 Go 语言一个稍复杂的 HelloWord 尚有许多知识点需要理解。
欢迎访问 Go语言学习(二)