【go笔记】标准库-strconv

简介: 【go笔记】标准库-strconv

前言

标准库strconv提供了字符串类型与其他常用数据类型之间的转换。

  • strconv.FormatX()用于X类型转字符串,如strconv.FormatFloat()用于浮点型转字符串。
  • strconv.ParseX()用于字符串转X类型,如strconv.ParseFloat()用于字符串转浮点型。
  • 对于整型,常用strconv.Itoa()整型转字符串和strconv.Atoi()字符串转整型,当然也可以用FormatInt()ParseInt()

函数原型

// 整型转字符串
func Itoa(i int) string
func FormatInt(i int64, base int) string
// 字符串转整型
func Atoi(s string) (int, error)
func ParseInt(s string, base int, bitSize int) (i int64, err error)
// 浮点型转字符串
func FormatFloat(f float64, fmt byte, prec, bitSize int) string
// 字符串转浮点型
func ParseFloat(s string, bitSize int) (float64, error)
// 布尔型转字符串
func FormatBool(b bool) string
// 字符串转布尔型
func ParseBool(str string) (bool, error)
// 复数转字符串
func FormatComplex(c complex128, fmt byte, prec, bitSize int) string
// 字符串转复数
func ParseComplex(s string, bitSize int) (complex128, error)

具体函数说明请点击文末“参考资料”的官方文档链接。

示例代码

package main
import (
  "fmt"
  "strconv"
)
func main() {
  // 整型转字符串
  var a int = 123
  // 输出:123, 123, string
  fmt.Printf("%d, %v, %T \n", a, strconv.Itoa(a), strconv.Itoa(a))
  // 浮点型转字符串
  var b float64 = 3.141592653589793
  // 输出:3.141593, 3.14159265, string
  fmt.Printf("%f, %v, %T \n", b, strconv.FormatFloat(b, 'f', 8, 64), strconv.FormatFloat(b,'f', 8, 64))
  
  // 字符串转整型
  var c string = "56789"
  if c2,err := strconv.Atoi(c); err == nil {
    // 输出:string, 56789, int
    fmt.Printf("%T, %v, %T \n",c, c2, c2)
  }
  // 字符串转浮点型
  var d string = "123.456789"
  if d2, err := strconv.ParseFloat(d, 64); err == nil {
    // 输出:string, 123.456789, float64
    fmt.Printf("%T, %v, %T \n", d, d2, d2)
  }
}

参考资料

相关文章
|
2月前
|
Shell Go API
Go语言grequests库并发请求的实战案例
Go语言grequests库并发请求的实战案例
|
13天前
|
存储 Cloud Native Shell
go库介绍:Golang中的Viper库
Viper 是 Golang 中的一个强大配置管理库,支持环境变量、命令行参数、远程配置等多种配置来源。本文详细介绍了 Viper 的核心特点、应用场景及使用方法,并通过示例展示了其强大功能。无论是简单的 CLI 工具还是复杂的分布式系统,Viper 都能提供优雅的配置管理方案。
|
16天前
|
JSON 安全 网络协议
go语言使用内置函数和标准库
【10月更文挑战第18天】
13 3
|
17天前
|
JSON 监控 安全
go语言选择合适的工具和库
【10月更文挑战第17天】
11 2
|
1月前
|
Linux 编译器 Go
cgo--在Go中链接外部C库
cgo--在Go中链接外部C库
|
3月前
|
存储 JSON 前端开发
一文搞懂 Go 1.21 的日志标准库 - slog
一文搞懂 Go 1.21 的日志标准库 - slog
107 2
|
3月前
|
XML Go 数据库
|
5天前
|
存储 JSON 监控
Viper,一个Go语言配置管理神器!
Viper 是一个功能强大的 Go 语言配置管理库,支持从多种来源读取配置,包括文件、环境变量、远程配置中心等。本文详细介绍了 Viper 的核心特性和使用方法,包括从本地 YAML 文件和 Consul 远程配置中心读取配置的示例。Viper 的多来源配置、动态配置和轻松集成特性使其成为管理复杂应用配置的理想选择。
23 2
|
3天前
|
Go 索引
go语言中的循环语句
【11月更文挑战第4天】
11 2
|
3天前
|
Go C++
go语言中的条件语句
【11月更文挑战第4天】
14 2