编程 Go语言中的`strconv`包,提供了字符串与基本数据类型之间的转换函数

2024-11-19 02:02:18 +0800 CST views 1023

概述

strconv 包提供了一系列辅助函数,用于在字符串类型和其他基本数据类型之间进行转换。

Atoi & Itoa

strconv 包中,最常用的函数之一是字符串和整数之间的相互转换。Atoi 用于将字符串转换为整数(string to int),Itoa 用于将整数转换为字符串(int to string)。注意,这两个函数处理的整数都是十进制的。

函数声明如下:

func Atoi(s string) (int, error)
// 当字符串格式错误时会返回 strconv.NumError

func Itoa(i int) string

ParseX 系列函数

当需要将字符串转换为其他类型的变量时,可以使用 strconv 中的 ParseX 系列函数。该系列函数包含四个函数:ParseBoolParseIntParseFloatParseUint

详细的函数说明如下:

  • func ParseBool(str string) (bool, error)

    该函数将字符串转换为布尔值。如果输入格式错误,则返回 NumError。接受的真值包括:"1", "t", "T", "TRUE", "true", "True";假值包括:"0", "f", "F", "FALSE", "false", "False"

  • func ParseInt(s string, base int, bitSize int) (i int64, err error)

    该函数将字符串转换为指定进制和位大小的整数。参数说明:

    • s:要转换的字符串。
    • base:整数的进制(2-36,0 表示自动检测,如 0x 表示 16 进制)。
    • bitSize:整数的位大小(0、8、16、32、64),如 0 表示 int 类型,64 表示 int64 类型。

    如果输入格式错误,返回 NumError

  • func ParseUint(s string, base int, bitSize int) (n uint64, err error)

    ParseUintParseInt 类似,但用于无符号整数。

  • func ParseFloat(s string, bitSize int) (float64, error)

    该函数将字符串转换为浮点数。参数说明:

    • s:要转换的字符串。
    • bitSize:浮点数的位大小,典型值为 32 和 64。

    无论 bitSize 取值如何,返回值的类型都是 float64

FormatX 系列函数

ParseX 相对应,FormatX 系列函数用于将其他类型的变量转换为字符串类型。这一系列包含以下四个函数:

  • func FormatBool(b bool) string

    将布尔值转换为字符串。

  • func FormatInt(i int64, base int) string

    将有符号整数转换为指定进制的字符串。

  • func FormatUint(i uint64, base int) string

    将无符号整数转换为指定进制的字符串。

ParseX 函数不同,从其他类型转换为字符串总会成功,因此这些函数不会返回错误。

  • func FormatFloat(f float64, fmt byte, prec, bitSize int) string

    FormatFloat 函数用于将浮点数转换为字符串。参数说明:

    • f:要转换的浮点数。
    • fmt:浮点数的格式('b', 'e', 'E', 'f', 'g', 'G')。
    • prec:浮点数的精度(取决于 fmt 的值)。
    • bitSize:浮点数的位大小(32 或 64)。

有关 FormatFloat 参数的详细介绍,请参阅 GoDoc FormatFloat


了更好的组织,使信息更加清晰,并对一些关键点进行了补充说明,帮助理解。

复制全文 生成海报 编程 Go语言 数据类型转换

推荐文章

免费常用API接口分享
2024-11-19 09:25:07 +0800 CST
MyLib5,一个Python中非常有用的库
2024-11-18 12:50:13 +0800 CST
WebSQL数据库:HTML5的非标准伴侣
2024-11-18 22:44:20 +0800 CST
如何将TypeScript与Vue3结合使用
2024-11-19 01:47:20 +0800 CST
GROMACS:一个美轮美奂的C++库
2024-11-18 19:43:29 +0800 CST
windows安装sphinx3.0.3(中文检索)
2024-11-17 05:23:31 +0800 CST
20个超实用的CSS动画库
2024-11-18 07:23:12 +0800 CST
一键配置本地yum源
2024-11-18 14:45:15 +0800 CST
禁止调试前端页面代码
2024-11-19 02:17:33 +0800 CST
浅谈CSRF攻击
2024-11-18 09:45:14 +0800 CST
16.6k+ 开源精准 IP 地址库
2024-11-17 23:14:40 +0800 CST
基于Webman + Vue3中后台框架SaiAdmin
2024-11-19 09:47:53 +0800 CST
Elasticsearch 聚合和分析
2024-11-19 06:44:08 +0800 CST
PHP 命令行模式后台执行指南
2025-05-14 10:05:31 +0800 CST
php微信文章推广管理系统
2024-11-19 00:50:36 +0800 CST
JS 箭头函数
2024-11-17 19:09:58 +0800 CST
程序员茄子在线接单