我有一个不干净的代码。我想增加结构,但我认为这是无效的。CounterNameLikepackage mainimport "fmt"type NameLike struct { Name string Counter int}func main() { sosmed := make(map[string]NameLike) sosmed["rizal"] = NameLike{"Rizal Arfiyan", 10} for i := 1; i < 10; i++ { sosmed["rizal"] = NameLike{ Counter: sosmed["rizal"].Counter + 1, } } fmt.Println(sosmed)}你对这段代码有什么想法,使它干净吗?sosmed["rizal"] = NameLike{ Counter: sosmed["rizal"].Counter + 1,}
1 回答
蝴蝶刀刀
TA贡献1801条经验 获得超8个赞
您可以采取几种方法来简化此代码。
当前地图按值传递。如果你通过引用,你可以简化一些事情:NameLike
package main
import "fmt"
type NameLike struct {
Name string
Counter int
}
func main() {
sosmed := make(map[string]*NameLike)
sosmed["rizal"] = &NameLike{"Rizal Arfiyan", 10}
for i := 1; i < 10; i++ {
sosmed["rizal"].Counter++
}
fmt.Println(sosmed["rizal"])
}
https://play.golang.org/p/-xvCJyqQ6V0
- 1 回答
- 0 关注
- 116 浏览
添加回答
举报
0/150
提交
取消
