GO

94 阅读3分钟
关键字作用一级分类二级分类三级分类
var变量声明基本结构变量与常量-
const常量声明基本结构变量与常量-
package包声明基本结构包管理-
import包引用基本结构包管理-
func函数声明基本组件函数-
return函数返回基本组件函数-
interface接口基本组件自定义类型-
struct结构体基本组件自定义类型-
type定义类型基本组件自定义类型-
map基本组件引用类型-
range基本组件引用类型-
go流程控制并发-
select流程控制并发-
chan流程控制并发-
if流程控制单任务流程控制单分支流程
else流程控制单任务流程控制单分支流程
switch流程控制单任务流程控制多分支流程
case流程控制单任务流程控制多分支流程
default流程控制单任务流程控制多分支流程
fallthrough流程控制单任务流程控制多分支流程
for流程控制单任务流程控制循环流程
break流程控制单任务流程控制循环流程
continue流程控制单任务流程控制循环流程
goto流程控制单任务流程控制
defer流程控制延时流程控制

类型

数据类型

在 Go 编程语言中,数据类型用于声明函数和变量。

数据类型的出现是为了把数据分成所需内存大小不同的数据,编程的时候需要用大数据的时候才需要申请大内存,就可以充分利用内存。

Go 语言按类别有以下几种数据类型:

类型长度默认值说明
bool1false
byte10uint8
int,uint4,80默认整数类型,依据目标平台,32或64
int8,uint810-128127,0127
int16,uint1620-2^15~(2^15)-1,0~(2^15)-1
int32,uint3240-2^31~(2^31)-1,0~(2^31)-1
int64,uint6480-2^63~(2^63)-1,0~(2^63)-1
float3240.0
float6480.0默认浮点数类型
string""字符串,默认值为空字符串,而非NULL
array数组
struct结构体
interfacenil接口
functionnil函数
mapnil字典,引用类型
slicenil切片,引用类型
channelnil通道,引用类型

变量定义

在数学概念中,变量表示没有固定值且可改变的数。但从计算机系统实现角度来看,变量是一段或多段用来存储数据的内存。

作为静态类型语言,go变量总是有固定的数据类型,类型决定了变量内存的长度和存储格式。我们只能修改变量值,无法改变类型。

var关键字定义

关键字var用于定义变量,和C不同,类型被放在变量后面。若显式提供初始值,可省略变量类型,由编译器推断。 变量定义时,除var关键字外,还可使用更加简短的变量定义和初始化语法。

package main


import "fmt"


func main() {
  x := 10 // 使用 := 进行定义并初始化
  fmt.Println(x) // 输出语句 10

使用简短模式的一些限制:

  • 定义变量,同时显式初始化。

  • 不能提供数据类型。

  • 只能用在函数内部,不能用在全局变量中。

多变量赋值

进行多变量赋值操作时,首先计算出等号右边值,然后再依次完成赋值操作。