Go 语言入门指南:基础语法和常用特性解析 | 豆包MarsCode AI刷题

84 阅读2分钟

1. 变量

在Golang中,变量必须先声明后使用。变量声明的格式为:var 变量名 变量类型。例如:

var age int

这表示声明了一个名为age的整数类型变量。如果要同时声明多个变量,可以使用逗号隔开,例如:

var name string, age int

Golang还支持短变量声明,例如:

name := "Tom"

这表示声明了一个名为name的字符串类型变量,并初始化为"Tom"。

2. 常量

常量是不可变的值,一旦声明后就不能再修改。Golang中的常量使用关键字const声明,例如:

const pi = 3.14159

这表示声明了一个名为pi的常量,并赋值为3.14159。

3. 运算符

Golang中的运算符与其他语言类似,包括算术运算符、赋值运算符、比较运算符、逻辑运算符等。

算术运算符包括+、-、*、/、%等,例如:

a := 10
b := 3
c := a / b // 结果为3

赋值运算符包括=、+=、-=、*=、/=等,例如:

a := 10
a += 5 // 等价于a = a + 5

比较运算符包括==、!=、<、<=、>、>=等,例如:

a := 10
b := 5
if a > b {
fmt.Println("a大于b")
} else {
fmt.Println("a小于等于b")
}

逻辑运算符包括&&、||、!等,例如:

a := true
b := false
if a && b {
fmt.Println("a和b都为真")
} else {
fmt.Println("a和b有一个为假")
}

4. 流程控制

Golang中的流程控制包括条件语句、循环语句等。

条件语句包括if语句和switch语句,例如:

a := 10
if a > 5 {
fmt.Println("a大于5")
} else if a > 0 {
fmt.Println("a大于0,小于等于5")
} else {
fmt.Println("a小于等于0")
}

switch语句可以用于多条件判断,例如:

a := 3
switch a {
case 1:
fmt.Println("a等于1")
case 2:
fmt.Println("a等于2")
case 3:
fmt.Println("a等于3")
default:
fmt.Println("a不等于1、2、3")
}

循环语句包括for语句和range语句,例如:

for i := 0; i < 10; i++ {
fmt.Println(i)
}

a := []int{1, 2, 3, 4, 5}
for i, v := range a {
fmt.Println(i, v)
}

思考: 相比较Java而言,Golang会有很多的语法糖,首先,Golang相比于Java语法更为简洁直观,其注重于整洁性和可读性,使用gofmt这样的工具可以使代码风格统一。与Java相比,Golang中的变量声明不需要使用var关键字,只需要给变量指定类型即可。同时,Golang的语言特性采用了很多函数式编程的思想,支持匿名函数和闭包,让代码更加简洁优美。此外,Golang强制使用大括号限定代码块,不支持小括号,这一点与Java不同。另外,Golang的语法还支持多返回值,这意味着函数不仅可以返回一个值,而是可以返回多个值,这在Java中是不支持的。