这是我参与「第五届青训营 」伴学笔记创作活动的第 1 天
Go语言的基础
环境配置
首先要下载编译器,点击电击o.dev](go.dev) Download ,下载对应平台安装包,安装即可 然后配置go proxy,七牛云的镜像,地址为goproxy.cn
hello world
基础语法
变量
GO有以下的基本类型
数值型(整型、浮点型)
字符型(单个字符)
布尔型
字符串(Go中归属为基本数据类型)
复数类型(complex64、complex128)
rune
还有以下的复杂类型
指针
数组
结构体
管道
函数
切片
接口
map
声明变量的方法一共三种
var i int(代表声明一个类型为int的变量i)
i:=2(代表声明一个类型为int的变量i并赋值为2)
var i = 2(同上)
多变量的声明
go中类型后置,变量名前置
所以var i,j int 代表声明一个i和一个j,类型都是Int
输出
go的输出一般使用fmt包内的函数,常用的方法如下
fmt.Println("hello world!")
fmt.Println("hello world! like:", a,"wo",b,"再来一杯")
fmt.Print(a,"wo",c,"不喝了","不喝了","\n")
fmt.Printf("the %d times to say hello world!!! \n", c)
条件语句
go有if else,if else if else,switch等条件分支语句,基本使用方式与c语言相似
注意if的条件语句不需要括号,同时if else if else的换行也需注意,下面是一个简单的示例
if n==1{
fmt.Println("1")
}else if n==2{
fmt.Println("2")
}else{
fmt.Println("3")
}//注意换行,否则会编译错误
循环语句
go只有一个循环语句就是for,但是拥有许多用法
如for{}=while(true){}
正常的for格式如下
for i:=1;i<=5;i++{
fmt.Println(i)
}//注意没有括号
增强for语句,有的类型支持for each遍历
在golang中 foreach实现格式如下
for k,v := range a{
//k为下标,v为值
}
复杂数据类型
数组:
声明如下:
var a [5]int 代表声明一个大小为5的数组a
var a [5]int{1,2,3,4,5} 声明并初始化了a
切片:
声明如下:
s :=make([]string,3)声明一个大小为3的切片
加入数据:
append方法向切片加入数据,会插入最后的位置
map:
声明如下
a := make(map[string]string) 声明一个key为string,value为string的map
加入元素:
直接下标访问即可
删除元素
delete即可
函数
函数统一采用func来声明,入参变量写在括号内并后置类型,返回类型后置
例如 func add(a int,b int) int{}代表一个入参为两个int返回类型为一个int的函数
golang的函数支持返回多值,此时是按照顺序返回
例如一个函数add返回一个int与error类型,那么接受时这么写
num,err:=add(a,b)
指针
golang的指针较为简单,只需要用*即可,一般用于对传入函数的入参进行修改
结构体
golang的结构体声明方法如下:
type 结构体名字 struct{
变量...
函数...
}
其中的变量和函数大写开头代表public,小写代表private
访问结构体内的成员用.来访问