String 在Go中将bigint转换为字符串

String 在Go中将bigint转换为字符串,string,int,go,bigint,String,Int,Go,Bigint,在Golang中如何将大整数转换为字符串(或整数) bigint := big.NewInt(123) //This is what I have bigstr = "123" //This is what I want 只需使用String方法: 我使用了以下方法: bigint := big.NewInt(1231231231231) bigstr := fmt.Sprint(bigint) 当您询问如何将bigInt转换为string或int时,接受的答案仅解释如何转换为string

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

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

只需使用
String
方法:

我使用了以下方法:

bigint := big.NewInt(1231231231231)
bigstr := fmt.Sprint(bigint)

当您询问如何将bigInt转换为string或int时,接受的答案仅解释如何转换为string

所以你有了你的
bigint:=big.NewInt(123)


您可以通过两种可能的方式将bigInt转换为整数:

  • 使用。使用
    yourInt:=bigint.Int64()
  • 使用。使用
    yourUint:=bigint.Uint64()
使用这两种方法的原因是uint持有2倍大的数字,有时你知道答案是肯定的。请注意,如果该数字大于int64/uint64的最大值:

如果x不能在int64中表示,则结果未定义



为了完整起见,要转换为字符串,只需使用
bigstr:=bigint.string()

谢谢你的回答,cyberdelia。我应该提出一个新的问题,或者我可以问你如何转换为另一种方式:从字符串到bigint?(同样,我在任何地方都找不到答案。)@BurntSushi5-非常感谢!这是big.Int的一个很好的小字符串示例:bigint.SetString(“123”,10)感谢pst的评论。经过几个小时的搜索,我想说的是,这些文档在bigint上不是很好。例如,我一辈子都不知道如何从字符串转换为bigint。直接调用
bigint.string()
(而不是通过fmt的接口{})更简单、更有效。使用
fmt
包的唯一原因是如果您想使用特殊格式。我在一个非常大的int中使用了bigint.String(),得到了类似于1.212343534546e308的值
bigint := big.NewInt(1231231231231)
bigstr := fmt.Sprint(bigint)