从字符串中解析数字是许多程序中的一个基本但常见的任务;这是在Go中实现的方法。
package main
// 内置的strconv包提供了数字解析功能。
import (
"fmt"
"strconv"
)
func main() {
// 使用ParseFloat时,这里的64表示要解析的精度位数。
f, _ := strconv.ParseFloat("1.234", 64)
fmt.Println(f)
// 对于ParseInt,0表示从字符串推断基数。64要求结果必须适合64位。
i, _ := strconv.ParseInt("123", 0, 64)
fmt.Println(i)
// ParseInt能够识别十六进制格式的数字。
d, _ := strconv.ParseInt("0x1c8", 0, 64)
fmt.Println(d)
// ParseUint也是可用的。
u, _ := strconv.ParseUint("789", 0, 64)
fmt.Println(u)
// Atoi是一个便捷函数,用于基本的十进制整数解析。
k, _ := strconv.Atoi("135")
fmt.Println(k)
// 解析函数在输入错误时会返回一个错误。
_, e := strconv.Atoi("wat")
fmt.Println(e)
}运行结果:
➜ go run number-parsing/number-parsing.go
1.234
123
456
789
135
strconv.Atoi: parsing "wat": invalid syntax原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。