go语言的设计较为简约,比如go的关键字只有25个,本文中将会简单整理一下go语言词法基础信息,主要包括关键字/基本数据类型/复合数据类型/操作符。
25个关键字
go语言中包含25个关键字,被分成了三类。
类别 | 关键字 |
---|
程序声明 | import,package |
程序实体声明及定义 | chan,const,func,interface,map,struct,type,var |
程序流程控制 | go,select,break,continue,default,defer,else,fallthrough,for,goto,if,range,return,switch |
18种基本数据类型
名称 | Size(字节) | 说明 |
---|
bool | 1 | 布尔类型 |
byte | 1 | 字节类型 |
rune | 4 | go特有数据类型,专用于存储Unicode编码 |
int/uint/ | - | 整型,size与平台有关 |
int8/uint8 | 1 | 8位整型 |
int16/uint16 | 2 | 16位整型 |
int32/uint32 | 4 | 32位整型 |
int64/uint64 | 8 | 64位整型 |
float32 | 4 | 32位浮点型 |
float64 | 8 | 64位浮点型 |
complex64 | 8 | 64位复数类型 |
complex128 | 16 | 128位复数类型 |
string | - | 字符串类型 |
8种复合数据类型
名称 | 关键字 | 说明 |
---|
Channel | chan | 通道 |
Function | func | 函数 |
Interface | interface | 接口 |
Map | map | 字典 |
Struct | struct | 结构体 |
Slice | - | 切片 |
Array | - | 数组 |
Pointer | - | 指针 |
21种操作符
项番 | 符号 | 说明 |
---|
No.1 | || | 逻辑或操作符 |
No.2 | && | 逻辑与操作符 |
No.3 | == | 相等判断操作 |
No.4 | != | 不等判断操作 |
No.5 | < | 小于 |
No.6 | <= | 小于或等于 |
No.7 | > | 大于 |
No.8 | >= | 大于或等于 |
No.9 | + | 求和操作 |
No.10 | - | 求差操作 |
No.11 | | | 按位或操作 |
No.12 | ^ | 异或 |
No.13 | * | 乘积或者取值 |
No.14 | / | 求商 |
No.15 | % | 求余 |
No.16 | << | 按位左移 |
No.17 | >> | 按位右移 |
No.18 | & | 按位与 |
No.19 | &^ | 按位清除 |
No.20 | ! | 逻辑非 |
No.21 | <- | 接收操作 |