Go语言基础语法|青训营

65 阅读2分钟

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"))//此时验证密码为错误

以下为控制台输出结果:

image-20230725214235980.png

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
    }