当前位置:首页 >时尚 >Golang 中的 Strconv 包详解,看这篇就够了 Golang 中的详解 Strconv 包详解

Golang 中的 Strconv 包详解,看这篇就够了 Golang 中的详解 Strconv 包详解

2024-06-13 08:29:08 [百科] 来源:避面尹邢网

Golang 中的详解 Strconv 包详解,看这篇就够了

作者:路多辛 开发 后端 Strconv 是看篇 Golang 中一个非常常用的包,主要用于字符串和基本数据类型之间的详解相互转换。本文将详细介绍 Strconv 包的看篇常用函数及用法。

strconv 是详解 Golang 中一个非常常用的包,主要用于字符串和基本数据类型之间的看篇相互转换。本文将详细介绍 strconv 包的详解常用函数及用法。

Golang 中的 Strconv 包详解,看这篇就够了 Golang 中的详解 Strconv 包详解

strconv.Atoi 和 strconv.Itoa

Atoi 函数用于将字符串转换为 int 类型,看篇Itoa 函数则用于将 int 类型转换为字符串类型。详解简单使用示例如下:

Golang 中的 Strconv 包详解,看这篇就够了 Golang 中的详解 Strconv 包详解

package mainimport (    "fmt"    "strconv")func main() {     str := "123"    intValue,看篇 _ := strconv.Atoi(str)    fmt.Printf("str to int: %d\n", intValue)    intValue += 1    str = strconv.Itoa(intValue)    fmt.Printf("int to str: %s\n", str)}

strconv.Parse 系列函数

strconv.Parse 系列函数用于将字符串解析为指定类型。其中常用的详解函数有 ParseInt、ParseBool 和 ParseFloat。看篇简单使用示例如下:

Golang 中的 Strconv 包详解,看这篇就够了 Golang 中的详解 Strconv 包详解

package mainimport (	"fmt"	"strconv")func main() { 	// 解析整数	intStr := "123"	intValue,详解 _ := strconv.ParseInt(intStr, 10, 64)	fmt.Printf("Parsed int value: %d\n", intValue)	// 解析布尔值	boolStr := "true"	boolValue, _ := strconv.ParseBool(boolStr)	fmt.Printf("Parsed bool value: %t\n", boolValue)	// 解析浮点数	floatStr := "3.14"	floatValue, _ := strconv.ParseFloat(floatStr, 64)	fmt.Printf("Parsed float value: %f\n", floatValue)}

strconv.Format 系列函数

strconv.Format 系列函数用于将基本数据类型转换为字符串类型。常用的看篇函数有 FormatInt、FormatBool 和 FormatFloat。详解简单使用示例如下:

package mainimport (	"fmt"	"strconv")func main() { 	// 格式化整数	intValue := 123	intStr := strconv.FormatInt(int64(intValue), 10)	fmt.Printf("Formatted int string: %s\n", intStr)	// 格式化布尔值	boolValue := true	boolStr := strconv.FormatBool(boolValue)	fmt.Printf("Formatted bool string: %s\n", boolStr)	// 格式化浮点数	floatValue := 3.14	floatStr := strconv.FormatFloat(floatValue, 'f', -1, 64)	fmt.Printf("Formatted float string: %s\n", floatStr)}

strconv.Append 系列函数

strconv.Append 系列函数用于将基本数据类型追加到已存在的字节数组中。常用的函数有 AppendInt、AppendBool 和 AppendFloat。简单使用示例如下:

package mainimport (    "fmt"    "strconv")func main() {     // 追加整数到字节数组    num1 := 123    byteSlice := []byte("Number: ")    byteSlice = strconv.AppendInt(byteSlice, int64(num1), 10)    fmt.Printf("Appended int: %s\n", byteSlice)    // 追加布尔值到字节数组    boolVal := true    byteSlice = []byte("Bool: ")    byteSlice = strconv.AppendBool(byteSlice, boolVal)    fmt.Printf("Appended bool: %s\n", byteSlice)    // 追加浮点数到字节数组    floatVal := 3.14    byteSlice = []byte("Float: ")    byteSlice = strconv.AppendFloat(byteSlice, floatVal, 'f', -1, 64)    fmt.Printf("Appended float: %s\n", byteSlice)}

strconv.IsPrint 和 strconv.IsGraphic

strconv.IsPrint 函数用于判断给定的 Unicode 字符是否可打印,可打印字符是指那些可以在屏幕上显示的字符。strconv.IsGraphic 函数用于判断给定的 Unicode 字符是否是图形字符,图形字符是指可视化的字符。简单使用示例如下:

package mainimport (	"fmt"	"strconv")func main() { 	chars := []rune{ 'H', 'e', 'l', '\n', '♥', 127}	for _, char := range chars { 		fmt.Printf("Character: %c, IsPrint: %v\n", char, strconv.IsPrint(char))		fmt.Printf("Character: %c, IsGraphic: %v\n", char, strconv.IsGraphic(char))	}}

strconv.Quote 和 strconv.Unquote 系列函数

strconv.Quote 系列函数用于转义和引用字符串的功能,将字符串转换为可以直接表示的字符串字面值(literal),包括添加转义字符和引号。简单使用示例如下:

package mainimport (	"fmt"	"strconv")func main() { 	str := `路多辛的, "所思所想"!`	quoted := strconv.Quote(str)	fmt.Println("Quoted: ", quoted)	unquoted, err := strconv.Unquote(quoted)	if err != nil { 		fmt.Println("Unquote error: ", err)	} else { 		fmt.Println("Unquoted: ", unquoted)	}}

strconv.CanBackquote

strconv.CanBackquote 函数用于检查字符串是否可以不变地表示为单行反引号字符串(即以 `` 开头和结尾的字符串)。简单使用示例如下:

package mainimport (	"fmt"	"strconv")func main() { 	str1 := "Hello, world!"	str2 := "`Hello, world!`"	str3 := "`Hello,\nworld!`"	fmt.Println(strconv.CanBackquote(str1)) // 输出:false	fmt.Println(strconv.CanBackquote(str2)) // 输出:true	fmt.Println(strconv.CanBackquote(str3)) // 输出:false}
责任编辑:姜华 来源: 今日头条 StrconvGolang

(责任编辑:热点)

    推荐文章
    • 花呗为什么提前还款是大忌 具体原因有哪些?

      花呗为什么提前还款是大忌 具体原因有哪些?很多人会使用花呗提前消费,无法一次性还款就会办理花呗分期,等手里头有钱了就打算提前还款。虽说花呗分期是支持提前还款,可有不少人认为花呗提前还款是大忌。那么,花呗为什么提前还款是大忌?这里就来给大家分析 ...[详细]
    • 1万预算如何选择全画幅微单相机?

      1万预算如何选择全画幅微单相机?现在的全画幅微单相机性能确实强,画质、对焦、防抖、视频拍摄可谓面面俱到,但相对应的价格也是水涨船高,多数机型的售价都在1.5万元左右。那么如果您的购机预算只有一万,是否可以购买到性价比高的机型呢?答案 ...[详细]
    • IFC:中小微企业可持续金融参考指南

      IFC:中小微企业可持续金融参考指南中小微企业对全球经济的可持续转型至关重要。他们占据全球企业总数的90%,并贡献了50%以上的就业岗位。尽管中小微企业意义重大,但在新兴市场中,他们仍然难以获得融资。这不仅限制了他们的业务增长,也限制了 ...[详细]
    • 新型水凝胶能修复人体受损组织

      新型水凝胶能修复人体受损组织    科技日报北京1月16日电 记者张梦然)《自然·化学工程》首期发表了一篇论文,提出一种释放颗粒的水凝胶,能表现出多种形态。其中包括一种绷带状构造,可强化受损组织的黏合。这一可生物相容的凝胶或可为 ...[详细]
    • 白鹤滩水电站2022年累计生产清洁电能100亿千瓦时 可节约标准煤约306万吨

      白鹤滩水电站2022年累计生产清洁电能100亿千瓦时 可节约标准煤约306万吨截至5月5日00时22分,世界在建规模最大、综合技术难度最高的水电工程——白鹤滩水电站2022年累计生产清洁电能100亿千瓦时。据悉,100亿千瓦时清洁电能可节约标准煤约306 ...[详细]
    • 科普微电影《记忆旅游》聚焦脑机接口

      科普微电影《记忆旅游》聚焦脑机接口主办方供图本报讯见习记者江庆龄)1月16日,由上海市科学技术委员会“科技创新行动计划”科普专项项目资助、上海科技馆精心制作的公益科普微电影《记忆旅游》在上海自然博物馆报告厅首映。该片以脑机接口技术为主 ...[详细]
    • 机器学习加速新药研发进程

      机器学习加速新药研发进程    科技日报北京1月16日电 记者张梦然)英国剑桥大学和美国辉瑞公司合作开发了一个平台,将自动化实验与人工智能AI)相结合,以预测化学物质如何相互反应,从而加速新药的设计过程。研究结果发表在最新一 ...[详细]
    • 小米品牌安全微博更名为“小米法务部” 黑子危险了?

      小米品牌安全微博更名为“小米法务部” 黑子危险了?小米品牌安全微博更名为“小米法务部” 黑子危险了?【手机中国新闻】1月16日,手机中国发现,原名为“小米品牌安全”的微博账号现已正式更名为“小米法务部”。这一变化似乎不仅仅是一个简单的名字更换,而是表 ...[详细]
    • 寰亚传媒(08075.HK)中期亏损收窄至1916万港元 每股亏损4.58港仙

      寰亚传媒(08075.HK)中期亏损收窄至1916万港元 每股亏损4.58港仙寰亚传媒(08075.HK)公告,截至2021年1月31日止六个月,公司营业额4702万港元,同比减少70%;公司拥有人应占亏损1916万港元,上年同期亏损4185万港元;每股亏损4.58港仙。营业额 ...[详细]
    • 《流域水污染治理成套集成技术丛书》获奖

      《流域水污染治理成套集成技术丛书》获奖本报讯记者甘晓 通讯员阚宇轩)近日,由中国科学院过程工程研究所研究员曹宏斌、中国环境科学研究院研究员周岳溪牵头组织编著的《流域水污染治理成套集成技术丛书8册)》获中国石油和化学工业优秀出版物奖图书奖) ...[详细]
    热点阅读