Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有一个type List []string并且我正在实现一些标准功能Insert,例如DeleteAt等。我想实现range这样我可以轻松地迭代列表。 我似乎找不到这样做的方法。
type List []string
Insert
DeleteAt
range
没有理由重新实现 range,因为 range 关键字适用于 List 类型。
var l List for i, v := range l { /* whatever */ }
在 Go 中,不可能为给定的类型自己实现范围。Range 仅适用于 Go 的内置数据结构:切片、映射和通道(以及数组?)。