• Golang 中 int 类型和字符串类型如何相互转换?


    目录

    使用 strconv 包

    使用 fmt 包

    使用 github.com/spf13/cast 库

    小结


    在日常开发中,经常需要将数字转换为字符串或者将字符串转换为数字。在 Golang 中,有一些很简便的方法可以实现这个功能,接下来就详细讲解一下如何实现 int 类型和字符串类型之间的互相转换。

    使用 strconv 包

    strconv 包提供的 Itoa 和 Atoi 函数可以用于 int 类型和字符串类型之间的相互转换。

    1. int 转字符串

    1. package main
    2. import (
    3. "fmt"
    4. "strconv"
    5. )
    6. func main() {
    7. num := 123
    8. str := strconv.Itoa(num)
    9. fmt.Println(str) // 输出:"123"
    10. }

    使用 Itoa 函数将 int 类型转换为字符串类型,Itoa 函数的使用方法非常简单,只需将要转换的 int 值传入该函数,返回转换后的字符串。

    2. 字符串转 int

    1. package main
    2. import (
    3. "fmt"
    4. "strconv"
    5. )
    6. func main() {
    7. str := "456"
    8. num, err := strconv.Atoi(str)
    9. if err != nil {
    10. fmt.Println("转换失败:", err)
    11. } else {
    12. fmt.Println(num) // 输出:456
    13. }
    14. }

    使用 Atoi 函数将字符串类型转换为 int 类型,只需要将字符串传入该函数即可,返回转换后的 int 值和可能出现的错误信息。

    使用 fmt 包

    fmt 包也提供了一些函数可以完成 int 类型和字符串类型之间的转换。

    1. int 转字符串

    1. package main
    2. import (
    3. "fmt"
    4. )
    5. func main() {
    6. num := 123
    7. str := fmt.Sprintf("%d", num)
    8. fmt.Println(str) // 输出:"123"
    9. }

    使用 fmt 包中的 Sprintf 函数可以返回格式化后的字符串,传入一个占位符"%d"和要转换的 int 值给该函数即可。

    2. 字符串转 int

    1. package main
    2. import (
    3. "fmt"
    4. )
    5. func main() {
    6. str := "456"
    7. var num int
    8. _, err := fmt.Sscanf(str, "%d", &num)
    9. if err != nil {
    10. fmt.Println("转换失败:", err)
    11. } else {
    12. fmt.Println(num) // 输出:456
    13. }
    14. }

    使用 fmt包中的 Sscanf 函数可以根据指定的格式将字符串解析为 int 值。传入要解析的字符串、占位符"%d"和一个指向 int 变量的指针给该函数即可,将从字符串中解析出相应的 int 值并赋给指定的变量。

    使用 github.com/spf13/cast 库

    cast 库是用于不同类型之间进行转换的库,功能非常强大,自然也包括 int 类型和字符串类型之间的互相转换功能。

    1. int 转字符串

    1. package main
    2. import (
    3. "fmt"
    4. "github.com/spf13/cast"
    5. )
    6. func main() {
    7. num := 123
    8. str := cast.ToString(num)
    9. fmt.Println(str) // 输出:"123"
    10. }

    使用 ToString 函数可以将其他类型转换为字符串类型,只需传入待转换的值即可。

    2. 字符串转 int

    1. package main
    2. import (
    3. "fmt"
    4. "github.com/spf13/cast"
    5. )
    6. func main() {
    7. str := "456"
    8. num := cast.ToInt(str) // 输出:456
    9. fmt.Println(num)
    10. }

    使用 ToInt 函数可以将其他类型转换为 int 类型,只需传入待转换的值即可。

    1. package main
    2. import (
    3. "fmt"
    4. "github.com/spf13/cast"
    5. )
    6. func main() {
    7. str := "路多辛的博客"
    8. num := cast.ToInt(str) // // 输出:0
    9. fmt.Println(num)
    10. }

    小结

    本文详细介绍了 Golang 中实现 int 类型和字符串类型相互转换的几种方法,希望这些方法能够让你在使用 Golang 时更加得心应手。

  • 相关阅读:
    DELL笔记本在安装系统时,发现无法检测到固态硬盘
    C#.NET 国密SM2 加密解密 与JAVA互通 ver:20230805
    工业相机基本知识理解:工业相机IO接口,功耗和供电方式
    element form中input使用@keyup.enter.native回车页面刷新问题
    电影评分数据分析案例-Spark SQL
    真正“搞”懂HTTP协议14之HTTP3
    从零开始搭建防抖音短视频APP-MongoDB的安装与配置,MongoDB的可视化管理工具,SpringBoot整合MongoDB
    关于开设go语言专题的说明
    Pytorch实现LSTM预测模型并使用C++相应的ONNX模型推理
    ODOO原生会计6大核心业务凭证生成详细说明(干货!)
  • 原文地址:https://blog.csdn.net/luduoyuan/article/details/133047484