Go语言基础 | 青训营笔记

293 阅读3分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 1 天

Go语言的基础

环境配置

首先要下载编译器,点击电击o.dev](go.dev) Download ,下载对应平台安装包,安装即可 然后配置go proxy,七牛云的镜像,地址为goproxy.cn

hello world

基础语法

变量

GO有以下的基本类型
    数值型(整型、浮点型)
    字符型(单个字符)
    布尔型
    字符串(Go中归属为基本数据类型)
    复数类型(complex64complex128rune
还有以下的复杂类型
    指针
    数组
    结构体
    管道
    函数
    切片
    接口
    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)

条件语句

goif 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为stringmap
    加入元素:
        直接下标访问即可
    删除元素
        delete即可

函数

 函数统一采用func来声明,入参变量写在括号内并后置类型,返回类型后置
 例如 func add(a int,b int) int{}代表一个入参为两个int返回类型为一个int的函数
 golang的函数支持返回多值,此时是按照顺序返回
 例如一个函数add返回一个interror类型,那么接受时这么写
 num,err:=add(a,b)

指针

golang的指针较为简单,只需要用*即可,一般用于对传入函数的入参进行修改

结构体

golang的结构体声明方法如下:
    type 结构体名字 struct{
        变量...
        函数...
    }
其中的变量和函数大写开头代表public,小写代表private
访问结构体内的成员用.来访问