首頁  >  文章  >  後端開發  >  go語言怎麼將float轉string類型

go語言怎麼將float轉string類型

青灯夜游
青灯夜游原創
2023-01-17 10:43:149310瀏覽

轉換方法:1、使用Sprintf()函數,支援將float32、float64轉為string,語法「str := fmt.Sprintf("%f", floatVar)」。 2.使用FormatFloat()函數,可以將float類型的變數f轉換為字串類型的變數str,語法「str :=strconv.FormatFloat(f,fmte,prec,bitSize)」。

go語言怎麼將float轉string類型

本教學操作環境:windows7系統、GO 1.18版本、Dell G3電腦。

在 Go 語言 中,常需要將 float 類型 轉換成 string 類型。 Go 語言 float 轉 string 可以使用 strconv 套件或 fmt 套件裡面的相關 函數。

方法1:使用fmt.Sprintf()

支援float32、float64 轉string

str := fmt.Sprintf("%f", floatVar)
#參數 描述
str 轉換成字串後的值。
floatVar 需要轉換的 float 類型的變數。

說明:

  • 我們使用fmt.Sprintf 實作了將float 類型的變數floatVar 轉成了字串類型。

範例:

package main
import (
	"fmt"
)
func main() {
	//Golang 实现 float32 转 string
	var score float32 = 99.9
	strScore := fmt.Sprintf("%f", score)
	fmt.Println("StrScore = ", strScore)
	//Golang 实现 float64 转 string
	var km  = 9900.10
	strKm := fmt.Sprintf("%.5f", km)
	fmt.Println("StrKm = ", strKm)
}

go語言怎麼將float轉string類型

#方法2:使用strconv.FormatFloat()

str := strconv.FormatFloat(f float64, fmt byte, prec, bitSize int)
參數 描述
#str 將float 轉換成的字串。
f 需要轉換的 float64 類型的變數。
fmt 使用 f 表示不使用指數的形式。
prec 保留幾個小數。
bitSize 如果為 32,表示是 float32 類型,如果是 64,表示是 float64 類型。

fmt轉為字串後,字串的型別:

  • 'b' (-ddddp±ddd):二進位指數

  • 'e' (-d.dddde±dd):10進位指數

  • 'E' (-d.ddddE± dd):10進位指數

  • 'f' (-ddd.dddd):無指數

  • 'g' :指數很大式使用'e',其他使用'f'

  • 'G' :指數很大時使用'E',其他使用'f'

  • 'x' (-0xd.ddddp±ddd):十六進位分數與二進位指數

  • #'X' (-0Xd.ddddP±ddd):十六進制分數與二進制指數

prec:控制經度

  • #如果格式標記為'e'、'E'、'f'、' x'、'X',則prec 表示小數點後的數字位數

  • 如果格式標記為'g','G',則prec 表示總的數字位數(整數部分小數部分)

說明:

我們使用了strconv.FormatFloat 實作了將float 類型的變數f,轉換了字串類型的變數str 。

注意:

strconv.FormatFloat 函數的第一個參數,只能接受 float64 類型的變數。因此,如果需要將 float32 型轉換成 string,則需要先將 float32 轉成 float64。

範例:

package main
import (
	"fmt"
	"strconv"
)
func main() {
	//Golang 实现 float32 转 string
	var score float32 = 99.9
	strScore := strconv.FormatFloat(float64(score), 'f', 10, 32)
	fmt.Println("StrScore = ", strScore)
	//Golang 实现 float64 转 string
	var km  = 9900.10
	strKm := strconv.FormatFloat(km, 'f', 1, 64)
	fmt.Println("StrKm = ", strKm)
}

go語言怎麼將float轉string類型

【相關推薦:Go影片教學程式設計教學

以上是go語言怎麼將float轉string類型的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn