跳到主要内容

Go 语法

Go语言(又称Golang)是一种静态类型、编译型语言,由Google开发。它以简洁、高效和并发支持著称,非常适合构建现代应用程序。本文将从基础语法入手,帮助你快速掌握Go语言的核心概念。

1. 变量与常量

变量声明

在Go中,变量使用var关键字声明。变量声明的基本语法如下:

go
var 变量名 数据类型

例如:

go
var age int
age = 25

你也可以使用短变量声明(:=)来简化变量声明和初始化:

go
name := "Alice"
提示

短变量声明只能在函数内部使用。

常量

常量使用const关键字声明,常量的值在程序运行期间不可更改。

go
const pi = 3.14159

2. 数据类型

Go语言支持多种数据类型,包括基本类型和复合类型。

基本类型

  • 整数类型int, int8, int16, int32, int64
  • 浮点数类型float32, float64
  • 布尔类型bool
  • 字符串类型string

复合类型

  • 数组:固定长度的序列
  • 切片:动态长度的序列
  • 结构体:自定义数据类型
  • 映射:键值对集合

例如,定义一个结构体:

go
type Person struct {
Name string
Age int
}

3. 控制结构

条件语句

Go语言中的条件语句包括ifelseswitch

go
if age > 18 {
fmt.Println("You are an adult.")
} else {
fmt.Println("You are a minor.")
}

循环语句

Go语言只有for循环,但可以通过不同的方式实现多种循环。

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

Go语言没有while循环,但可以通过for实现类似功能。

4. 函数

函数是Go语言的基本构建块。函数使用func关键字定义。

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

多返回值

Go语言支持函数返回多个值。

go
func swap(x, y string) (string, string) {
return y, x
}

5. 实际应用场景

并发编程

Go语言内置了强大的并发支持,使用goroutinechannel可以轻松实现并发编程。

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

func main() {
go printNumbers() // 启动一个goroutine
time.Sleep(1 * time.Second) // 等待goroutine完成
}
警告

在实际应用中,通常使用channel来同步goroutine,而不是使用time.Sleep

6. 总结

本文介绍了Go语言的基础语法,包括变量与常量、数据类型、控制结构、函数以及并发编程的基本概念。通过这些内容,你应该能够编写简单的Go程序,并理解Go语言的核心特性。

7. 附加资源与练习

  • 官方文档Go语言官方文档
  • 练习:尝试编写一个程序,使用goroutinechannel实现两个并发任务的同步。
提示

建议初学者多动手实践,通过编写代码来巩固所学知识。