Go语言基础
什么是Go语言
Go语言是谷歌2009年发布的第二款开源编程语言,它是一门编译型语言,它的语法与C语言类似,但它却是并发安全的,支持并行编程,而且它还能够方便地利用多核计算机进行高并发、高性能的程序开发。Go语言的出现,让我们在开发高并发程序时,不再需要去纠结线程、协程、锁、内存模型等问题,让我们可以更加专注于程序本身的逻辑。
Go语言的特点
- 语法简单,易于学习
- 并发安全,支持并行编程
- 内存管理,自动回收
- 丰富的标准库
Go语言的应用场景
- 网络编程
- 分布式系统
- Web开发
Go语言的安装
Windows
-
下载安装包
-
安装
Go语言的基本语法
注释
Go语言支持两种注释方式:
- 单行注释:以
//
开头,可以单独一行,也可以在代码后面 - 多行注释:以
/*
开头,以*/
结尾,可以单独一行,也可以跨行
标识符
Go语言中标识符由字母、数字、下划线组成,并且只能以字母或下划线开头,不能以数字开头,Go语言中标识符是区分大小写的,标识符的命名要见名知意,不能使用Go语言中的关键字作为标识符。
关键字
Go语言中有25个关键字:
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语言中的变量需要先声明后使用,变量声明的一般形式为:
var 变量名 变量类型
其中:
var
:关键字,用于声明变量变量名
:标识符,用于给变量命名变量类型
:用于指定变量的类型
例如:
var name string
Go语言中的变量声明可以使用简短模式,一般形式为:
变量名 := 表达式
其中:
变量名
:标识符,用于给变量命名表达式
:用于初始化变量的值
例如:
name := "张三"
Go语言中的变量声明还可以使用var()
的形式,一般形式为:
var (
变量名1 变量类型1
变量名2 变量类型2
...
)
例如:
var (
name string
age int
isOk bool
)
常量
Go语言中的常量需要先声明后使用,常量声明的一般形式为:
const 常量名 常量类型 = 表达式
其中:
const
:关键字,用于声明常量常量名
:标识符,用于给常量命名常量类型
:用于指定常量的类型表达式
:用于初始化常量的值
例如:
const pi float64 = 3.1415926
Go语言的基本数据类型
Go语言中的数据类型分为基本数据类型和复合数据类型,其中基本数据类型包括:
- 整型
- 浮点型
- 布尔型
- 字符串型
- 字符型
- 派生类型
- 指针类型
- 函数类型
- 数组类型
- 切片类型
- 字典类型
- 通道类型
- 结构体类型
- 接口类型
整型
Go语言中整型分为有符号整型和无符号整型,其中有符号整型包括:
类型 | 位数 | 范围 |
---|---|---|
int8 | 8 | -128 ~ 127 |
int16 | 16 | -32768 ~ 32767 |
int32 | 32 | -2147483648 ~ 2147483647 |
int64 | 64 | -9223372036854775808 ~ 9223372036854775807 |
无符号整型包括:
类型 | 位数 | 范围 |
---|---|---|
uint8 | 8 | 0 ~ 255 |
uint16 | 16 | 0 ~ 65535 |
uint32 | 32 | 0 ~ 4294967295 |
uint64 | 64 | 0 ~ 18446744073709551615 |
其中int
和uint
类型的位数与操作系统有关,32位操作系统中int
和uint
类型的位数为32位,64位操作系统中int
和uint
类型的位数为64位。
浮点型
Go语言中浮点型包括:
类型 | 位数 | 范围 |
---|---|---|
float32 | 32 | -3.4E38 ~ 3.4E38 |
float64 | 64 | -1.7E308 ~ 1.7E308 |
Go语言的运算符
Go语言中的运算符包括:
- 算术运算符
- 关系运算符
- 逻辑运算符
- 位运算符
- 赋值运算符