目录
在Go语言的strconv包中,提供了一系列用于字符串和基本数据类型之间相互转换的函数。以下是strconv包中的主要函数列表:
Atoi(s string) (int, error):将字符串转换为int类型。
Itoa(i int) string:将int类型转换为字符串。
ParseBool(str string) (bool, error):将字符串转换为bool类型。
FormatBool(b bool) string:将bool类型转换为字符串。
ParseInt(s string, base int, bitSize int) (int64, error):将字符串转换为指定进制下的int64类型。
ParseUint(s string, base int, bitSize int) (uint64, error):将字符串转换为无符号整数类型(uint64)。
FormatInt(i int64, base int) string:将int64类型转换为指定进制下的字符串。
FormatUint(u uint64, base int) string:将无符号整数类型(uint64)转换为指定进制下的字符串。
ParseFloat(s string, bitSize int) (float64, error):将字符串转换为float64类型。
FormatFloat(f float64, fmt byte, prec, bitSize int) string:将float64类型转换为字符串,可以指定格式和精度。
AppendInt(dst []byte, i int64, base int) []byte:将int64类型追加到字节切片中。
AppendBool(dst []byte, b bool) []byte:将bool类型追加到字节切片中。
AppendQuote(dst []byte, s string) []byte:将字符串添加引号并追加到字节切片中。
strconv
包是Go语言中的标准库之一,用于字符串和基本数据类型之间的转换。它提供了许多函数,可以方便地进行字符串解析和格式化。下面是一些strconv
包的常见用法示例:
字符串转换为其他类型
package main
import (
"fmt"
"strconv"
)
func main() {
str := "1234"
// 字符串转换为整数
num, err := strconv.Atoi(str)
if err != nil {
fmt.Println("转换失败:", err)
return
}
fmt.Println(num)
// 字符串转换为布尔值
b, err := strconv.ParseBool("true")
if err != nil {
fmt.Println("转换失败:", err)
return
}
fmt.Println(b)
// 字符串转换为浮点数
f, err := strconv.ParseFloat("3.14", 64)
if err != nil {
fmt.Println("转换失败:", err)
return
}
fmt.Println(f)
}
在上述示例中,我们使用strconv.Atoi
将字符串转换为整数,strconv.ParseBool
将字符串转换为布尔值,strconv.ParseFloat
将字符串转换为浮点数。如果转换过程中出现错误,我们会打印错误信息。
其他类型转换为字符串
package main
import (
"fmt"
"strconv"
)
func main() {
num := 1234
// 整数转换为字符串
str := strconv.Itoa(num)
fmt.Println(str)
// 布尔值转换为字符串
str = strconv.FormatBool(true)
fmt.Println(str)
// 浮点数转换为字符串
str = strconv.FormatFloat(3.14, 'E', -1, 64)
fmt.Println(str)
}
在上述示例中,我们使用strconv.Itoa
将整数转换为字符串,strconv.FormatBool
将布尔值转换为字符串,strconv.FormatFloat
将浮点数转换为字符串,并指定打印格式。
处理错误和默认值
package main
import (
"fmt"
"strconv"
)
func main() {
str := "abc"
// 错误处理
num, err := strconv.Atoi(str)
if err != nil {
fmt.Println("转换失败:", err)
} else {
fmt.Println(num)
}
// 默认值
num, err = strconv.Atoi(str)
if err != nil {
num = 0 // 默认值
}
fmt.Println(num)
}
在上述示例中,我们处理了Atoi
函数的错误,并提供了默认值作为后备选项。
这些示例只是strconv
包的一部分功能,它还提供了许多其他函数,可以进行更复杂的转换操作。你可以查阅官方文档或使用go doc strconv
命令获取更详细的信息。