📅  最后修改于: 2023-12-03 15:42:04.456000             🧑  作者: Mango
在 Go 编程语言中,结构体是一种自定义的复合类型,它由若干个字段组成。而 struct slice 是结构体的一个切片,它可以拥有多个结构体元素。在实际开发中,我们经常需要遍历 struct slice,可以使用 range 关键字来遍历 struct slice。
package main
import "fmt"
// 定义一个结构体
type student struct {
name string
grade int
}
func main() {
// 定义一个 struct slice
students := []student{
{name: "Alice", grade: 94},
{name: "Bob", grade: 85},
{name: "Charlie", grade: 72},
}
// 使用 range 关键字遍历 struct slice
for index, student := range students {
fmt.Printf("序号:%d, 名字:%s, 成绩:%d\n", index, student.name, student.grade)
}
}
上述代码中,我们首先定义了一个叫做 student
的结构体。然后,我们定义了一个 struct slice students
,其中包含了 3 个 student
元素。最后,我们使用 for-range
结构来遍历 students
中的所有元素,打印每个元素的名字和成绩。
运行上述代码,我们得到以下输出:
序号:0, 名字:Alice, 成绩:94
序号:1, 名字:Bob, 成绩:85
序号:2, 名字:Charlie, 成绩:72
以上就是遍历 struct slice 的基本方法。我们可以通过修改结构体元素的字段值来进行修改操作,或者利用结构体元素中的某些字段进行相关计算。