Go语言基础语法
1.变量、常量
Go语言中的变量和常量需要先进行声明,可以使用关键字var来声明变量,使用关键字const来声明常量。
var 变量名称
const 变量名称=值
2.数据类型
数据类型包括整型、浮点型、布尔型和字符串型;复合类型包括数组、结构体;引用类型:指针、切片、映射、函数和通道;以及接口类型
var a="initial"
var b int =2
var c=true
var d float64=4.5
var arr [4]int = [4]int{1,2,3,4}
var e:=make(map[string]int){"one":1,"two":2}
var f:=make([]string,3)
3.数据操作
对数据的操作只能为赋值,所以在调用函数修改值时需要传入数据的地址,通过指针实现
以下为一个示例:
type user struct{
name string
password string
}
func (u *user)resetPassword(password string){
u.password=password
}
func checkPassword(u user,password string)bool{
return u.password==password
}
a:=user{name:"zhang",password:"1234"}//设定用户名为zhang,密码为1234
fmt.Println(checkPassword(a,"1234"))//此时验证密码1234为通过
a.resetPassword("0000")//修改a的密码为0000
fmt.Println(checkPassword(a,"1234"))//此时验证密码为错误
以下为控制台输出结果:
4.基础语法
if-else
如果存在分支,则可以在上面代码的基础上添加 else 关键字以及另一代码块,这个代码块中的代码只有在条件不满足时才会执行,if 和 else 后的两个代码块是相互独立的分支,只能执行其中一个。
if yes {
// do something
} else {
// do something
}
循环
for 循环是一个循环控制结构,可以执行指定次数的循环。
以下为一个循环求和举例:
for i,num:=range nums{
sum+=num
}
switch
和 if 语句类似,switch 语句也可以在条件语句之前执行一段简短的表达式(可以用于很方便的控制变量的作用域),switch case 开始执行时,会先执行这一个表达式(空也算一种),然后计算出条件语句的值,接着按从上到下,从左到右的顺序一个一个的执行 case 语句的条件表达式,如果值相等的话就会进入执行 case 条件下对应的语句。 如果所有的 case 条件都没有能匹配上的话,然后就会尝试执行 default 下对应的逻辑。
switch condition {
case expression1:
statements
case expression2:
statements
default:
statements
}