Convert a bigint to a string in Go

后端 未结 3 1087
不知归路
不知归路 2021-02-13 18:25

How do one convert a big int to a string (or integer) in Golang?

bigint := big.NewInt(123) //This is what I have
bigstr = \"123\" //This is what I want
         


        
3条回答
  •  滥情空心
    2021-02-13 19:06

    You asked how to convert a bigInt to string or to int, the accepted answer explains only how to convert to string.

    So you have your bigint := big.NewInt(123)


    You can convert your bigInt to integer in two possible ways:

    • using .Int64(). With yourInt := bigint.Int64()
    • using .Uint64(). With yourUint := bigint.Uint64()

    The reason for two methods is that uint holds 2 time bigger numbers, and sometimes you know that the answer is positive. Beware that if the number is bigger than the maximum possible for int64/uint64:

    If x cannot be represented in an int64, the result is undefined.


    And for completeness, to convert to string, just use .String() bigstr := bigint.String()

提交回复
热议问题