【Golang】格式化輸出

Golang 格式化輸出使用"fmt"包。

  • Print 和 Printf
    不自動(dòng)插入空格,不自動(dòng)換行

  • Fprint 和 Fprintf
    不自動(dòng)插入空格,不自動(dòng)換行

  • Sprint 和 Sprintf
    不輸出,只返回字符串
    注意:Sprintf轉(zhuǎn)換字符串(%s)時(shí),可能隱式調(diào)用String()方法,可能出現(xiàn)循環(huán)調(diào)用

type MyString string

func (m MyString) String() string {
    return fmt.Sprintf("MyString=%s", m) // Error: 一致循環(huán)調(diào)用
}

可改為:

type MyString string
func (m MyString) String() string {
    return fmt.Sprintf("MyString=%s", string(m)) // OK: 先轉(zhuǎn)換類型
}
  • Println
    多個(gè)參數(shù)間自動(dòng)插入空格
    自動(dòng)換行
//以下輸出等效
    fmt.Print("Hello ", 23, "\n")
    fmt.Printf("Hello %d\n", 23)

    fmt.Print(fmt.Sprint("Hello ", 23, "\n"))
    fmt.Print(fmt.Sprintf("Hello %d\n", 23))

    fmt.Fprint(os.Stdout, "Hello ", 23, "\n")
    fmt.Fprintf(os.Stdout, "Hello %d\n", 23)

    fmt.Println("Hello", 23)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容