[Go小技巧] 如何写很酷的连贯操作?

前端之家收集整理的这篇文章主要介绍了[Go小技巧] 如何写很酷的连贯操作?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

定义连贯操作的结构体方法

  1. package toy
  2.  
  3. type Toy struct {
  4. nick string
  5. shape string
  6. color string
  7. height int
  8. }
  9.  
  10. func (t *Toy) SetNick(nick string) *Toy {
  11. t.nick = nick
  12. return t
  13. }
  14. func (t *Toy) SetShape(shape string) *Toy {
  15. t.shape = shape
  16. return t
  17. }
  18. func (t *Toy) SetColor(color string) *Toy {
  19. t.color = color
  20. return t
  21. }
  22. func (t *Toy) SetHeight(height int) *Toy {
  23. t.height = height
  24. return t
  25. }

连贯调用

  1. package main
  2.  
  3. import "toy"
  4.  
  5. func main() {
  6. var t = new(toy.Toy).
  7. SetNick("nick").
  8. SetShape("dog").
  9. SetColor("white").
  10. SetHeight(10)
  11. _ = t
  12. }

猜你在找的Go相关文章