【发布时间】:2020-12-30 05:23:42
【问题描述】:
下面是开始使用的代码示例。这个想法是我正在制作一个 API 端点,所以我不知道要解析的切片的长度。如何遍历 Golang 中长度未知的数组,以使其不会出错“索引超出范围”或崩溃?
package main
type Human struct {
ID int64
Name string
email string
alive bool
}
func main() {
var human []Human
// add the loop here
}
【问题讨论】:
-
这是一个切片,而不是一个数组。 tour.golang.org/moretypes/16
-
@adarian 虽然切片的长度在编译时可能未知,但在运行时可以使用内置函数发现
len。因此,没有什么可以阻止您使用经典的 for 循环形式,即for i := 0; i < len(s); i++ {,而不会导致 index-out-of-bounds 错误。
标签: go