这是我参与「第三届青训营 -后端场」笔记创作活动的的第1篇
目前有很多的公司都招聘Go语言的程序员,Go语言有很多的优点,比如:高性能,高并发,语法简单,入门快等优点
import的导入:
第一种是:import"fmt" import"errors" 第二种是:import( import"fmt" import"fmt" )
在Go语言中,变量的声明有三种方式:
第一种是:var 变量名 数据类型
第二种是:var 变量名 会根据赋值自动确定它的数据类型
第三种是:变量名:= 既包括声明也包括赋值
两种判断:
第一:if判断:
if 判断情况 {执行的内容} 省略了()
第二:switch判断:
Go语言中的switch判断减少了局限性,不在是Java中的整型或者char类型,在Go语言中的switch判断,字符串类型也能使用;并且不用break,来防止其继续执行后续代码。
在Go语言中只有for循环
for{}就表示死循环 循环的条件也省略了(),三个条件每一个都可以省略
数组
书写格式是:var 数组名 数组数据类型,可以先声明后赋值 声明且赋值:h:=[5]int{5,4,6,3,1} 在工程中我们一般不使用数组,因为数组的长度是要提前定好的,不能扩增的,所以我们一般使用切片
切片
定义格式:切片名:=make([]数据类型,初始大小) 赋值格式:切片名[index]=数据 可以通过len(切片名)得到这个切片的长度 添加数据:切片名=append(切片名,数据) 可以通过切片名[first,end]得到区间数据,包括开头,但不包括结尾
基础语法-map
跟Java中的Map集合有点相似,但功能没有那么多 定义声明格式:名=map[key的数据类型]value的数据类型{k:v,k:v}
基础语法-range
可以快速的遍历一个数组或者一个map,相当于简洁的for循环遍历
函数
定义格式:func 函数名(变量名 数据类型) 返回值类型{} 如果返回值类型有几个的时候,要用(),其他与Java等语言相似
指针
在Go语言中指针支持的操作比较有限 我们可以用指针来达到,改变变量值的问题,普通的方法是进行值传递的,无法达到修改值的目的,通过指针,对其地址值的修改,可以做到更改值
结构体
Go语言的结构体与Java中的类相似,具体的操作也类似
结构体方法
书写格式:func (结构体) 方法名 (方法参数) 返回值类型{} 结构体带指针的话,就能对结构体进行修改