douhuan4699
2017-06-14 08:45
浏览 3.1k
已采纳

如何在Golang中将数字(int或float64)转换为字符串

How do I convert any given number which can be a int or float64 to string ?

Using strconv.FormatFloat or FormatInt I have to specify that the given number is a float or integer. In my case it is unknown what I get.

Behaviour:

When I get a 5 it should be converted into "5" and not "5.00"

When I get a 1.23 it should be converted into "1.23" and not "1"

图片转代码服务由CSDN问答提供 功能建议

如何将给定数字(可以是int或float64)转换为字符串? \ n

使用strconv.FormatFloat或FormatInt,我必须指定给定的数字是浮点数或整数。 对于我来说,我不知道得到什么。

行为:

当我得到 5 时,应该将其转换为“ 5” 而不是“ 5.00”

当我得到 1.23 时,应该将其转换为“ 1.23” 而不是“ 1”

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • drxd54816 2017-06-14 08:56
    已采纳

    You may use fmt.Sprint

    fmt.Sprint returns string format of any variable passed to it

    Sample

    package main
    
    import (
        "fmt"
    )
    
    func main() {
        f := fmt.Sprint(5.03)
        i := fmt.Sprint(5)
        fmt.Println("float:",f,"
    int:",i)
    }
    

    play link

    已采纳该答案
    打赏 评论
  • drdr123456 2017-06-14 08:56

    If you don't know what type the number you need to convert to string will be, you can just use fmt.Sprintf with the %v verb:

    fmt.Sprintf("%v", 1.23) // "1.23"
    fmt.Sprintf("%v", 5) // "5"
    
    打赏 评论
  • shelgi 2021-07-01 01:16

    strconv.Itoa

    打赏 评论

相关推荐 更多相似问题