1.环境配置
//Linux env
wget https://studygolang.com/dl/golang/go1.10.3.linux-amd64.tar.gz //下载golang安装包
sudo tar -zxvf go1.10.3.linux-amd64.tar.gz -C /opt
sudo vi /etc/profile //配置如下环境变量
...
export GOPATH=$HOME/gopath
export GOROOT=/opt/go
export PATH=$GOROOT/bin:$GOPATH/bin:$PATH
...
source /etc/profile //载入环境变量
go version //验证安装是否成功
2.go hello world
创建hello.go文件
package main
import "fmt"
func main() {
fmt.Println("Hello, World!")
}
运行go run hello.go
屏幕上会输出Hello, World!
3.基本语法
这里就一些特别的语法进行说明,与其它编程语言很类似的部分不再详说
//使用大小写来决定该常量、变量、类型、接口、结构或函数是否可以被外部包所调用
func getId(){} getId不能被外部包调用
func GetId(){} getId可以被外部包调用
//变量的声明赋值
var a = 3 //a为int类型
var a = "Hello,go!" a为string类型
//也可以用省略var的写法声明变量,注意:变量名称在上边必须没有声明过 && 这种声明方法只能用于局部变量声明,不能用于全局变量
a := 3
a := "Hello,go!"
//局部变量声明后必须使用,否则会报错;
//全局变量可以声明后不适用。
//例如,下面这段代码就会报`a declared and not used`的错误
func main(){
a := "Hello,Go!"
fmt.Println("Hello,Go!");
}
//一个函数返回多个返回值;
//var 和 err 都是Func1的返回值
var,err = Func1()
//函数定义
func function_name( [parameter list] ) [return_types] {
//函数体
}
//example
func add(num1 int,num2 int) (int,int){
return num1,num2
}
//空指针,定义没有指向任何变量时,它的值为nil
var ptr *int
if(ptr == nil) //判断是否是空指针