2 回答

TA貢獻1744條經驗 獲得超4個贊
您應該實現方法。String
package main
import (
"fmt"
"strings"
)
type Rule struct {
Value string `json:"value"`
Tag string `json:"tag"`
Id string `json:"id"`
}
func (g *Rule) String() string {
return fmt.Sprintf("value:%s, tag:%s id:%s\n", g.Value, g.Tag, g.Id)
}
type RuleList []Rule
func (g RuleList) String() string {
slist := make([]string, 0)
for _, v := range g {
slist = append(slist, v.String())
}
return strings.Join(slist, "")
}
func main() {
g1 := Rule{Value: "hello", Tag: "1", Id: "1"}
g2 := Rule{Value: "hello", Tag: "1", Id: "1"}
g3 := Rule{Value: "hello", Tag: "1", Id: "1"}
glist := RuleList{g1, g2, g3}
fmt.Println(glist)
}

TA貢獻1785條經驗 獲得超4個贊
您可以通過實現串形接口來實現此目的 [更多關于串串器]
package main
import "fmt"
type Dummy struct{
Value, Tag, Id string
}
func (r Dummy) String() string {
return fmt.Sprintf("value:%v, tag:%v, id:%v\n", r.Value, r.Tag, r.Id)
}
func main(){
ls := make([]Dummy,0)
ls = append(ls, Dummy{"x0", "t0", "i0"})
ls = append(ls, Dummy{"x1", "t1", "i1"})
ls = append(ls, Dummy{"x2", "t2", "i2"})
ls = append(ls, Dummy{"x3", "t3", "i3"})
fmt.Println(Dummy{"x0", "t0", "i0"})
fmt.Println(ls)
}
- 2 回答
- 0 關注
- 103 瀏覽
添加回答
舉報