golang string、int、int64 float 互相轉(zhuǎn)換方式
golang string、int、int64 float 互相轉(zhuǎn)換
#string到int
int,err := strconv.Atoi(string)
#string到int64
int64, err := strconv.ParseInt(string, 10, 64)
//第二個(gè)參數(shù)為基數(shù)(2~36),
//第三個(gè)參數(shù)位大小表示期望轉(zhuǎn)換的結(jié)果類型,其值可以為0, 8, 16, 32和64,
//分別對(duì)應(yīng) int, int8, int16, int32和int64
#int到string
string := strconv.Itoa(int)
//等價(jià)于
string := strconv.FormatInt(int64(int),10)
#int64到string
string := strconv.FormatInt(int64,10)
//第二個(gè)參數(shù)為基數(shù),可選2~36
//對(duì)于無(wú)符號(hào)整形,可以使用FormatUint(i uint64, base int)
#float到string
string := strconv.FormatFloat(float32,'E',-1,32)
string := strconv.FormatFloat(float64,'E',-1,64)
// 'b' (-ddddp±ddd,二進(jìn)制指數(shù))
// 'e' (-d.dddde±dd,十進(jìn)制指數(shù))
// 'E' (-d.ddddE±dd,十進(jìn)制指數(shù))
// 'f' (-ddd.dddd,沒(méi)有指數(shù))
// 'g' ('e':大指數(shù),'f':其它情況)
// 'G' ('E':大指數(shù),'f':其它情況)
#string到float64
float,err := strconv.ParseFloat(string,64)
#string到float32
float,err := strconv.ParseFloat(string,32)
#int到int64
int64_ := int64(1234)golang float string int 相互轉(zhuǎn)換 保留小數(shù)位
string 轉(zhuǎn)換為 float
package main
import (
?? ?"fmt"
?? ?"strconv"
)
func main() {
?? ?input := "3.14"
?? ?f_input, _ := strconv.ParseFloat(input, 64)
?? ?fmt.Printf("%f - %T", f_input, f_input)
}執(zhí)行結(jié)果
> go run main.go
3.140000 - float64
int 轉(zhuǎn)化為 float
score := 100
f_score := float64(score)
fmt.Printf("%f - %T\n", f_score, f_score)
> 100.000000 - float64轉(zhuǎn)換為 string,并保留3位小數(shù)
s_score := fmt.Sprintf("%.3f", f_score)注意,這樣保留3位小數(shù)會(huì)自動(dòng)四舍五入。
無(wú)論是 32位系統(tǒng)還是 64 位系統(tǒng),都支持 float64
ubuntu 查看系統(tǒng)是 32 位還是 64 位
> uname -a Linux 509B65C8YW2THMJ 4.4.0-18362-Microsoft #1-Microsoft Mon Mar 18 12:02:00 PST 2019 x86_64 x86_64 x86_64 GNU/Linux
因?yàn)?2位只是寄存器的一次處理的位數(shù)。配合不同的算法,多大的數(shù)字都可以處理。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
使用golang實(shí)現(xiàn)在屏幕上打印進(jìn)度條的操作
這篇文章主要介紹了使用golang實(shí)現(xiàn)在屏幕上打印進(jìn)度條的操作,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-03-03
Go語(yǔ)言設(shè)計(jì)實(shí)現(xiàn)在任務(wù)欄里提醒你喝水的兔子
這篇文章主要為大家介紹了Go語(yǔ)言設(shè)計(jì)實(shí)現(xiàn)在任務(wù)欄里提醒你喝水的兔子示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01
Go語(yǔ)言的匿名字段實(shí)現(xiàn)組合復(fù)用實(shí)例探究
這篇文章主要為大家介紹了Go語(yǔ)言的匿名字段實(shí)現(xiàn)組合復(fù)用實(shí)例探究,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01
Go語(yǔ)言實(shí)戰(zhàn)之實(shí)現(xiàn)一個(gè)簡(jiǎn)單分布式系統(tǒng)
如今很多云原生系統(tǒng)、分布式系統(tǒng),例如?Kubernetes,都是用?Go?語(yǔ)言寫的,這是因?yàn)?Go?語(yǔ)言天然支持異步編程。本篇文章將介紹如何用?Go?語(yǔ)言編寫一個(gè)簡(jiǎn)單的分布式系統(tǒng),需要的小伙伴開(kāi)業(yè)跟隨小編一起學(xué)習(xí)一下2022-10-10
簡(jiǎn)單對(duì)比一下?C語(yǔ)言?與?Go語(yǔ)言
這篇文章主要介紹了簡(jiǎn)單對(duì)比一下?C語(yǔ)言?與?Go語(yǔ)言的相關(guān)資料,需要的朋友可以參考下2023-08-08

