GO语言设置GOPATH
-
$GPPATE : 你写GO代码的工作区,保存你的GO代码
-
GOPATH/bin 路径添加到环境变量中 :go install 命令会把生成的二进制可执行文件拷贝到GOPATH/bin
GO命令
go build
:编译GO程序
go build -o "XXX.exe"
:重新命名
go run main.go
:像执行脚本一样执行main.go文件
go install
: 先编译后拷贝
GO语言基础语法
存放Go源代码的文件后缀名是 .go
文件第一行 : package
关键词声明包名
如何要编译可执行文件,必须要有main包和main函数(入口函数)
//为单行注释
/* 为多行注释 */
Go语言函数外的语句必须以关键字开头
函数内定义的变量必须使用
变量和常量
变量
3种声明方式
var name string
var name = "peate"
- 函数内部专属:
name := "peate"
匿名变量(哑元变量)
//哑元变量 _
var name = "你说你是谁"
for _,v := range name {
fmt.Printf("%c\n",v)
}
- 当有些数据必须用变量接收但是又不使用它时,就可以用_来接收变量
常量
- const pi = 3.1415926
iota 实现枚举:
- iota 在const关键字出现的时候被重置为0
- const 中每新增一行常量声明,iota累加1
流程控制
IF
age := 19
if age > 18 {
fmt.Println("澳门首家线上赌场开业了!")
} else {
fmt.Println("该写寒假作业了!")
}
for循环
//基本格式
for i := 0 ; i<10 ; i ++ {
fmt.Println(i)
}
//变种1
//i := 5
//for ; i < 10 ; i ++ {
//fmt.Println(i)
//}
//变种2
i := 5
for i < 10 {
//fmt.Println(i)
i ++
}
//无限循环
//for {
// fmt.Println("无限")
//}
//for range 循环
//s := "大黄是hp"
//for i, v := range s{
// fmt.Printf("%d %c \n",i,v)
//}
基本数据类型
整形
- 无符号整形:
uint8,uint16,uint32,uint64
- 带符号整形:
int8,int16,int32,int64
- uint和int:具体是32位还是64位,看自己的操作系统
- uintptr : 表示指针
浮点型
- float64和float32
- GO语言中浮点数默认是float64
复数
- complex128和complex64
布尔值
- true 和 false
- 不能和其他的类型做转换
字符串
-
常用方法
-
字符串不能被修改,如果强制修改看示例
//字符串修改(实际情况字符串不能被修改) v2 := "白萝卜" v3 := []rune(v2) //把字符串强制转换为一个rune切片 (切片里面报错的是字符) v3[0] = '红' fmt.Println(string(v3))
字符串,字符,字节都是什么?
byte和rune类型 都属于类型别名
- 字符串:双引号包裹的是字符串
- 字符:单引号包裹的是字符,单个的字母,单个的符号,单个文字
- 字节: 1byte = 8 Bit
go语言中字符串都是UTF8编码,UTF8中一个汉子一般占用3个字节