一、语言结构:
- 包声明
- 引入包
- 函数
- 变量
- 语句 & 表达式
- 注释
示例:
package main
import "fmt"
func main() {
fmt.Println("Hello, World!")
}
字符串格式化
在学习过程中我们会经常用到字符串打印,语法:
fmt.Sprintf(格式化样式, 参数列表…)
package main
import (
"fmt"
)
func main() {
var stockcode=123
var enddate="2020-12-31"
var url="Code=%d&endDate=%s"
var target_url=fmt.Sprintf(url,stockcode,enddate)
fmt.Println(target_url)
}
- %v:表示按值本身输出,
- %+v表示在 %v 基础上,对结构体字段名和值进行展开
- %d 表示整型数字
- %s 表示字符串
- %f表示浮点型
- %p表示指针
- 还有其他特殊的,更多参见:go-fmt-sprintf详细介绍
注释
// 单行注释
/*
我是多行注释
*/
二、关键字
下面列举了 Go 代码中会使用到的 25 个关键字或保留字:
1 | 2 | 3 | 4 | 5 |
---|---|---|---|---|
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 语言还有 36 个预定义标识符:
1 | 2 | 3 | 4 | 5 | 6 |
---|---|---|---|---|---|
append | bool | byte | cap | close | complex |
complex64 | complex128 | uint16 | copy | false | float32 |
float64 | imag | int | int8 | int16 | uint32 |
int32 | int64 | iota | len | make | new |
nil | panic | uint64 | println | real | |
recover | string | true | uint | uint8 | uintptr |
三、常用数据类型
1.数字类型
- 整型:int
根据电脑系统架构自动匹配是32位还是64位,长度分为:int8, int16, int32,int64,对应无符号uint8,uint16,uint32,uint64。
//在Go中声明初始化
var a int = 10
- 浮点型:float32、float64
math.MaxFloat32
math.MaxFloat64
//在Go中声明初始化
var a int = 10
- 复数:complex64、complex128
2. 布尔类型
var b1 bool = true
var b2 bool = false
注意:在Go中无法将整型1、0转换成true 、false
3.字符串类型
var str string = ""
4.派生类型
- 指针:Pointer
- 数组
- 结构:struct
- 函数
- Channel
- Map
- 切片
- 接口
5.字符类型
- byte : uint8 的别名
- rune :int32的别名
四、数据类型转换
PS: 有变更,将后续补充...