切片与数组
Coddy Go 中的切片和映射 课程的第 2 课,共 21 课。
在其他编程语言中,我们经常会遇到动态数组。在 Go 中,这类结构称为切片,可以动态添加或删除元素。不过要注意,切片本身并不存储元素,而是充当数组的一个窗口。
现在,我们通过一个示例来看看切片和数组的区别。假设有一个包含 3 个元素的数组:
arr := [3]string{"Python", "Go", "Rust"}我们知道,数组是固定长度的集合类型,因此无法添加元素。如果尝试添加新元素,就会出现错误。
切片正是为了解决这个限制而出现的。来看一个示例:
var books = []string{"SQL", "Java", "C++"}如你所见,我们定义切片 <strong>books</strong> 的方式和普通数组相同,唯一的区别是我们没有定义长度。
这样,我们就可以在运行时动态添加或删除元素,而数组无法做到这一点。
访问切片中的元素和访问数组中的元素类似,可以使用索引:
fmt.Println(books[1]) // Java在 Go 中,切片让集合的使用更加灵活,因为它支持动态修改,而数组的结构是固定的。
挑战
简单- 按顺序定义一个包含以下元素的切片:"Learn Go"、"Learn Python"、"Learn Java"、"Coddy.tech"。
- 使用索引将 "Learn Go" 和 "Coddy.tech" 输出到屏幕上。
- 你可以按自己的喜好为切片命名。
亲手试试
package main
import (
"fmt"
)
func main() {
// 在这里编写你的代码
}
Go 中的切片和映射中的所有课
自己练习: Go 在线编译器