Go 语言入门指南:基础语法和常用特性解析 | 青训营

70 阅读2分钟

Go 语言入门指南:基础语法和常用特性解析

Go(又称为 Golang)是一种由 Google 开发的开源编程语言,以其简洁、高效和并发特性而备受开发者青睐。

基础语法

1. 变量声明与赋值

在 Go 中,可以使用 var 关键字声明变量,也可以使用短变量声明 := 来同时声明并赋值变量。例如:

var age int
name := "Alice"

2. 数据类型

Go 提供了基本的数据类型,如整数、浮点数、字符串、布尔值等。还有更高级的数据类型,如数组、切片、映射、结构体和接口。

3. 控制流

Go 支持常见的控制流语句,包括条件语句(if)、循环语句(for)和分支语句(switch)。

if age >= 18 {
    fmt.Println("成年人")
} else {
    fmt.Println("未成年人")
}

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

switch day {
    case "Monday":
        fmt.Println("星期一")
    case "Tuesday":
        fmt.Println("星期二")
    default:
        fmt.Println("其他")
}

常用特性

1. 并发支持

Go 在语言层面原生支持并发编程,通过 goroutine 和 channel 实现。Goroutine 是轻量级的线程,可同时运行成千上万个,而 channel 则用于 goroutine 之间的通信。

func main() {
    go doSomething()
    go doSomethingElse()
    time.Sleep(time.Second)
}

2. 函数

函数是 Go 中的一等公民,可以作为参数传递、返回值或赋值给变量。这使得函数式编程风格更容易实现。

func add(a, b int) int {
    return a + b
}

func apply(operation func(int, int) int, a, b int) int {
    return operation(a, b)
}

result := apply(add, 3, 5)  // 结果为 8

3. 包管理

Go 使用包来组织代码,它有助于模块化和代码复用。标准库中提供了丰富的包,而且 Go 的包管理工具(go mod)使第三方库的管理变得简单明了。

4. 错误处理

Go 采用了显式的错误处理机制,鼓励开发者在函数返回值中返回错误信息。这种方式有助于更清晰地处理错误,并避免隐藏错误。

result, err := doSomething()
if err != nil {
    fmt.Println("发生错误:", err)
}