Go – How to convert number (int or float64) to string in Golang

castinggointegerstring

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"

Best Answer

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,"\nint:",i)
}

play link