我来自 Python 背景,因此倾向于从迭代器的角度进行思考。在我看来range,Go中的关键字打算让我们以几乎相同的方式思考,所以我想在语义上做一些与 Go 中的 Python 代码等效的事情:
for obj in json_decoder:
# business logic
这是 Go 中的激励案例;考虑以下函数:
func (c *GorpController) Create(dec *json.Decoder) {
// business logic
}
我希望能够将其实现为:
for someValue := range dec {
// business logic
}
是否有某种方式可以range与Decoder接口一起使用?将其包装在不同界面中的函数将是理想的,并且可以接受惯用模式。
谢谢!
慕田峪4524236
慕慕森
相关分类