Go 中的格式化字符串`fmt.Sprintf()` 和 `fmt.Printf()`

在 Go 中,可以使用 fmt.Sprintf()fmt.Printf() 函數來格式化字符串,這兩個函數類似於 C 語言中的 scanfprintf 函數。

fmt.Sprintf()

fmt.Sprintf() 函數返回一個格式化後的字符串,而不是將其打印到標準輸出流中。下面是一個例子:

package main

import "fmt"

func main() {
    name := "Mazey"
    age := 24
    str := fmt.Sprintf("My name is %s and I'm %d years old.", name, age)
    fmt.Println(str)
}

輸出:

My name is Mazey and I'm 24 years old.

在這個例子中,使用了 %s%d 格式化動詞來格式化字符串。s 用於字符串,d 用於整數。

fmt.Printf()

fmt.Printf() 函數將格式化後的字符串打印到標準輸出流中。下面是一個例子:

package main

import "fmt"

func main() {
    name := "Mazey"
    age := 24
    fmt.Printf("My name is %s and I'm %d years old.", name, age)
}

輸出:

My name is Mazey and I'm 24 years old.

在這個例子中,使用了 %s%d 格式化動詞來打印格式化字符串。s 用於字符串,d 用於整數。

格式化動詞 Verbs

在 Go 中,可以使用不同的格式化動詞來格式化不同類型的數據。下面是五個最常用的格式化動詞:

  • %s:用於字符串
  • %t:用於布爾值
  • %d:用於有符號十進制整數
  • %f:用於浮點數
  • %v:用於任何值

參數索引 Argument Indexes

如果想要在格式化字符串中引用相同類型的多個參數,可以使用參數索引。例如:

package main

import "fmt"

func main() {
    fmt.Printf("%[2]d %[1]d", 2, 3)
}

輸出:

3 2

在這個例子中,使用了參數索引來交換 %d 格式化動詞引用的參數順序。

總結

在 Go 中,可以使用 fmt.Sprintf()fmt.Printf() 函數來格式化字符串。本文介紹了五個最常用的格式化動詞和參數索引的使用方法。

版權聲明

本博客所有的原創文章,作者皆保留版權。轉載必須包含本聲明,保持本文完整,並以超鏈接形式註明作者後除和本文原始地址:https://blog.mazey.net/3558.html

(完)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章