Golang 中的 strconv 包常用函数及用法详解

2023-12-05 0 372
目录
  • strconv.Atoi 和 strconv.Itoa
  • strconv.Parse 系列函数
  • strconv.Format 系列函数
  • strconv.Append 系列函数
  • strconv.IsPrint 和 strconv.IsGraphic
  • strconv.Quote 和 strconv.Unquote 系列函数
  • strconv.CanBackquote

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

strconv.Atoi 和 strconv.Itoa

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

package main
import (
\”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。简单使用示例如下:

package main
import (
\”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 main
import (
\”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 main
import (
\”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 main
import (
\”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 main
import (
\”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 main
import (
\”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
}

到此这篇关于Golang中的strconv包详解的文章就介绍到这了,更多相关Golangstrconv包内容请搜索悠久资源网以前的文章或继续浏览下面的相关文章希望大家以后多多支持悠久资源网!

您可能感兴趣的文章:

  • golang中之strconv包的具体使用方法
  • Golang 中的 strconv 包常用函数及用法详解
  • 详解Golang中strconv库的用法
  • GoLang中Strconv库有哪些常用方法
  • golang中strconv.ParseInt函数用法示例

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悠久资源 Golang Golang 中的 strconv 包常用函数及用法详解 https://www.u-9.cn/jiaoben/golang/102028.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务