欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Go語言中占位符格式化符號的實(shí)現(xiàn)

 更新時間:2025年10月09日 10:58:34   作者:Penge666  
本文介紹了Go語言中常用格式化占位符,包括結(jié)構(gòu)體、布爾、整數(shù)、浮點(diǎn)數(shù)、字符串、切片及指針類型,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

普通占位符

占位符描述舉例結(jié)果
%v默認(rèn)格式的值fmt.Printf("%v", User{Name: "小明", Age: 18}){小明 18}
%+v如果打印的是結(jié)構(gòu)體,額外打印字段名fmt.Printf("%+v", User{Name: "小明", Age: 18}){Name:小明 Age:18}
%#v對應(yīng)值的 Go 語法表示fmt.Printf("%#v", User{Name: "小明", Age: 18})main.User{Name:"小明", Age:18}
%T對應(yīng)值類型的 Go 語法表示fmt.Printf("%T", User{Name: "小明", Age: 18})main.User
%%非占位符,而是字面上的 %fmt.Printf("%%")%
package main

import (
	"fmt"
)

// 定義一個結(jié)構(gòu)體類型
type User struct {
	Name string
	Age  int
}

func main() {
	u := User{Name: "小明", Age: 18}

	fmt.Println("1. %v(默認(rèn)格式)")
	fmt.Printf("輸出: %v\n\n", u)
	// 輸出: {小明 18}

	fmt.Println("2. %+v(結(jié)構(gòu)體帶字段名)")
	fmt.Printf("輸出: %+v\n\n", u)
	// 輸出: {Name:小明 Age:18}

	fmt.Println("3. %#v(Go 語法表示)")
	fmt.Printf("輸出: %#v\n\n", u)
	// 輸出: main.User{Name:"小明", Age:18}

	fmt.Println("4. %T(類型表示)")
	fmt.Printf("輸出: %T\n\n", u)
	// 輸出: main.User

	fmt.Println("5. %%(百分號字面量)")
	fmt.Printf("輸出: 100%% 成功\n")
	// 輸出: 100% 成功
}

布爾

占位符描述舉例結(jié)果
%t對應(yīng)值 true 或 falsefmt.Printf("%t", false)false

整數(shù)

占位符描述舉例結(jié)果
%b二進(jìn)制的形式fmt.Printf("%b", 2)10
%c對應(yīng)的Unicode碼位表示的字符fmt.Printf("%c", 65)A
%d十進(jìn)制的形式fmt.Printf("%d", 10)10
%5d十進(jìn)制的形式,長度為5,長度不夠用空格來補(bǔ)fmt.Printf("%5d", 123)__123,由于空格顯示不出來,用下劃線表示空格
%o八進(jìn)制的形式fmt.Printf("%o", 10)12
%O前綴為0o的八進(jìn)制的形式fmt.Printf("%O", 10)0o12
%q使用 Go 語法安全轉(zhuǎn)義的單引號字符文字fmt.Printf("%q", 65)'A'
%x十六進(jìn)制的形式,字母部分用小寫字母 a-f 表示fmt.Printf("%x", 12)c
%X十六進(jìn)制的形式,字母部分用大寫字母 A-F 表示fmt.Printf("%X", 12)C
%UUnicode 格式fmt.Printf("%U", 15)U+000F

浮點(diǎn)數(shù)

占位符描述舉例結(jié)果
%f打印小數(shù),默認(rèn)的長度和小數(shù),小數(shù)精度為 6 位fmt.Printf("%f", 1.50000000001)1.500000
%5f長度為 5(整數(shù)和小數(shù)點(diǎn)以及小數(shù)加起來的長度),默認(rèn)小數(shù)精度6位,長度不夠則用空格來補(bǔ)fmt.Printf("%10f", 0.1)__0.100000,由于空格顯示不出來,用下劃線表示空格
%.3f默認(rèn)長度,小數(shù)精度為 3fmt.Printf("%.3f", 0.1)0.100
%7.3f長度為 7(整數(shù)和小數(shù)點(diǎn)以及小數(shù)加起來的長度),小樹精度為 3fmt.Printf("%7.3f", 0.1)__ 0.100,由于空格顯示不出來,用下劃線表示空格

字符串和字節(jié)切片

占位符描述舉例結(jié)果
%s輸出 string 類型或 []byte 類型的字符串形式fmt.Printf("%s, %s", "haha", []byte("haha"))haha, haha
%q加上雙引號的字符串fmt.Printf("%q", "haha")"haha"
%x十六進(jìn)制的形式,字母用小寫表示,每個字節(jié)兩個字符fmt.Printf("%x", "hello")68656c6c6f
%X十六進(jìn)制的形式,字母用大寫表示,每個字節(jié)兩個字符fmt.Printf("%X", "hello")68656C6C6F
package main

import (
	"fmt"
)

func main() {
	s := "haha"
	b := []byte("haha")

	fmt.Println("1. %s:輸出字符串或 []byte 的字符串表示")
	fmt.Printf("輸出: %s, %s\n\n", s, b)
	// 輸出: haha, haha

	fmt.Println("2. %q:字符串帶雙引號")
	fmt.Printf("輸出: %q\n\n", s)
	// 輸出: "haha"

	fmt.Println("3. %x:十六進(jìn)制小寫(每字節(jié)兩個字符)")
	fmt.Printf("輸出: %x\n\n", "hello")
	// 輸出: 68656c6c6f

	fmt.Println("4. %X:十六進(jìn)制大寫(每字節(jié)兩個字符)")
	fmt.Printf("輸出: %X\n\n", "hello")
	// 輸出: 68656C6C6F
}

切片

占位符描述舉例結(jié)果
%p以16進(jìn)制表示的第0個元素的地址,前綴為0xfmt.Printf("%p", []int{1, 2, 3})0xc000010120

指針

占位符描述舉例結(jié)果
%p16進(jìn)制表示,前綴為0xfmt.Printf("%p", &User{Name: "小明"})0xc000008078

到此這篇關(guān)于Go語言中占位符格式化符號的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Go 占位符格式化符號內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

  • golang http使用踩過的坑與應(yīng)對方式

    golang http使用踩過的坑與應(yīng)對方式

    這篇文章主要介紹了golang http使用踩過的坑與應(yīng)對方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • 深入了解Golang的map增量擴(kuò)容

    深入了解Golang的map增量擴(kuò)容

    這篇文章主要介紹了深入了解Golang的map增量擴(kuò)容,擴(kuò)容的主要目的是為了縮短map容器的響應(yīng)時間。增量擴(kuò)容的本質(zhì)其實(shí)就是將總的擴(kuò)容時間分?jǐn)偟搅嗣恳淮蝖ash操作上,更多相關(guān)內(nèi)容需要的小伙伴可以參考一下
    2022-06-06
  • Go語言中的IO操作及Flag包的用法

    Go語言中的IO操作及Flag包的用法

    這篇文章介紹了Go語言中的IO操作及Flag包的用法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-07-07
  • go?doudou應(yīng)用中使用注解示例詳解

    go?doudou應(yīng)用中使用注解示例詳解

    這篇文章主要為大家介紹了go?doudou應(yīng)用中使用注解示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-12-12
  • Golang中堆排序的實(shí)現(xiàn)

    Golang中堆排序的實(shí)現(xiàn)

    堆是一棵基于數(shù)組實(shí)現(xiàn)的特殊的完全二叉樹,本文主要介紹了Golang中堆排序的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • 安裝Sublime?Text支持Go插件的方法步驟

    安裝Sublime?Text支持Go插件的方法步驟

    本文主要介紹了安裝Sublime?Text支持Go插件的方法步驟,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • Go routine使用方法講解

    Go routine使用方法講解

    goroutine是Go語言提供的語言級別的輕量級線程,在我們需要使用并發(fā)時,我們只需要通過go關(guān)鍵字來開啟goroutine即可。這篇文章主要介紹了GoLang并發(fā)機(jī)制goroutine原理,感興趣的可以了解一下
    2023-01-01
  • golang如何使用gos7讀取S7200Smart數(shù)據(jù)

    golang如何使用gos7讀取S7200Smart數(shù)據(jù)

    文章介紹了如何使用Golang語言的Gos7工具庫讀取西門子S7200Smart系列PLC的數(shù)據(jù),通過指定數(shù)據(jù)塊號、起始字節(jié)偏移量和數(shù)據(jù)長度,可以精確讀取所需的數(shù)據(jù),感興趣的朋友跟隨小編一起看看吧
    2024-12-12
  • 深入解析Go語言中HTTP請求處理的底層實(shí)現(xiàn)

    深入解析Go語言中HTTP請求處理的底層實(shí)現(xiàn)

    本文將詳細(xì)介紹?Go?語言中?HTTP?請求處理的底層機(jī)制,包括工作流程、創(chuàng)建?Listen?Socket?監(jiān)聽端口、接收客戶端請求并建立連接以及處理客戶端請求并返回響應(yīng)等,需要的朋友可以參考下
    2023-05-05
  • 最新評論