一、实践记录
- 时间:2024年11月2日
- 地点:线上学习平台
- 学习内容:Go 语言基础语法和常用特性 二、笔记正文
- Go 语言简介 Go(又称 Golang)是 Google 开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。它于 2009 年发布,旨在提高开发效率和程序性能。
- 基础语法 (1)变量声明与赋值 Go 语言变量声明使用关键字 var,赋值可以使用短变量声明符(:=)。 示例:
var a int = 10
b := "Hello, World!"
(2)数据类型 Go 语言数据类型包括基本数据类型(如 int、float、bool 等)和复合数据类型(如 array、slice、map、struct 等)。 示例:
var age int
var name string
var isStudent bool
(3)控制结构 Go 语言支持 if、for、switch 等控制结构。 示例:
if age > 18 {
fmt.Println("成年人")
} else {
fmt.Println("未成年人")
}
for i := 0; i < 10; i++ {
fmt.Println(i)
}
(4)函数 Go 语言函数定义格式如下:
func 函数名(参数列表) 返回值类型 {
// 函数体
}
示例:
func add(a, b int) int {
return a + b
}
- 常用特性解析 (1)切片(Slice) 切片是 Go 语言的一种灵活、高效的数据结构,用于处理数组。切片的声明和使用如下: 示例:
var slice []int = []int{1, 2, 3, 4, 5}
fmt.Println(slice[1:3]) // 输出:[2 3]
(2)映射(Map) 映射是一种键值对的数据结构,类似于 Python 中的字典。映射的声明和使用如下: 示例:
var m map[string]int = make(map[string]int)
m["age"] = 25
fmt.Println(m["age"]) // 输出:25
(3)并发(Goroutine) Go 语言原生支持并发编程,通过 goroutine 实现轻量级线程。示例:
func sayHello() {
fmt.Println("Hello, World!")
}
func main() {
go sayHello() // 启动一个 goroutine
time.Sleep(1 * time.Second) // 等待 goroutine 执行完毕
}
(4)通道(Channel) 通道是 Go 语言用于实现并发通信的一种机制。示例:
func main() {
ch := make(chan int)
go func() {
ch <- 10 // 向通道发送数据
}()
fmt.Println(<-ch) // 从通道接收数据
}
三、总结与反思 通过本次学习,我对 Go 语言的基础语法和常用特性有了初步了解。在实际编码过程中,我发现自己对切片和映射的使用还不够熟练,需要在后续学习中加强练习。同时,Go 语言的并发编程特性让我耳目一新,今后我将深入研究和掌握这一特性,以提高自己的编程水平。