Golang字符串解析成数字package main
import (
"strconv"
"fmt"
)
func main() {
// 使⽤ParseFloat解析浮点数,64是说明使⽤多少位
// 精度来解析
f, _ := strconv.ParseFloat("1.234", 64)
fmt.Println(f)
// 对于ParseInt函数,0 表⽰从字符串推断整型进制,
/
/ 则表⽰返回结果的位数
i, _ := strconv.ParseInt("123", 0, 64)
fmt.Println(i)
// ParseInt能够解析出16进制的数字
d, _ := strconv.ParseInt("0x1c8", 0, 64)
fmt.Println(d)
// 还可以使⽤ParseUint函数
u, _ := strconv.ParseUint("789", 0, 64)
fmt.Println(u)
// Atoi是解析10进制整型的快捷⽅法
k, _ := strconv.Atoi("135")
fmt.Println(k)
// 解析函数在遇到⽆法解析的输⼊时,会返回错误
_, e := strconv.Atoi("wat")
fmt.Println(e)
}
1.234
123
456
789
135
strconv.Atoi: parsing "wat": invalid syntax
/
/转换为字符串后追加到字节数组
slice := make([]byte, 0, 1024)
go语言字符串转数组
slice = strconv.AppendBool(slice, true)
//第⼆个数为要追加的数,第3个为指定10进制⽅式追加
slice = strconv.AppendInt(slice, 1234, 10)
slice = strconv.AppendQuote(slice, "abcgohello")
fmt.Println("slice = ", string(slice)) //转换string后再打印 //slice =  true1234"abcgohello"
//字符串转其它类型
var flag bool
var err error
flag, err = strconv.ParseBool("true")
if err == nil {
fmt.Println("flag = ", flag)  //flag =  true
} else {
fmt.Println("err = ", err)
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。