亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將循環 int 打印為字符串

將循環 int 打印為字符串

Go
慕哥9229398 2022-09-19 10:21:43
我有一個自定義類型循環顯示所有給定的字段。這樣做的目的是能夠比一條長長的,無窮無盡的單行更好地格式化它。但是,在循環中打印它不起作用,我嘗試過的所有內容都只是打印一行字符串,而不是數組中的所有4行。type Rule struct {    Value string `json:"value"`    Tag   string `json:"tag"`    Id    string `json:"id"`}func test() string {    get, err := getRules()    if err != nil {        panic(err)    }    for _, r := range get {        fmt.Printf("value:%v, tag:%v, id:%v\n", r.Value, r.Tag, r.Id)    }    // need to return it as a string like below    return fmt.Sprintf("%v", list)}有沒有辦法輕松地從中創建一個變量?所以我可以把它顯示為字符串嗎?打?。簂istvalue:x0, tag:t0, id:i0value:x1, tag:t1, id:i1value:x2, tag:t2, id:i2value:x3, tag:t3, id:i3從fmt.Printf(get)[{x0 t0 i0} {x1 t1 i1} {x2 t2 i2} {x3 t3 i3}]我基本上是在嘗試將自定義類型轉換為字符串,以便我可以更好地顯示它。
查看完整描述

2 回答

?
慕無忌1623718

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)


}


查看完整回答
反對 回復 2022-09-19
?
九州編程

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)

}


查看完整回答
反對 回復 2022-09-19
  • 2 回答
  • 0 關注
  • 103 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號