Golangでビッグintを文字列(または整数)に変換するにはどうすればよいですか?BigintをGoの文字列に変換する
bigint := big.NewInt(123) //This is what I have
bigstr = "123" //This is what I want
Golangでビッグintを文字列(または整数)に変換するにはどうすればよいですか?BigintをGoの文字列に変換する
bigint := big.NewInt(123) //This is what I have
bigstr = "123" //This is what I want
だけString
メソッドを使用します。http://golang.org/pkg/math/big/#Int.String
bigint := big.NewInt(123)
bigstr := bigint.String()
答え、サイバーデリアをありがとう。私は新しい質問をするべきですか、または逆の方法を変える方法をあなたに尋ねることができますか?文字列からbigintへ? (再び、私はどこでも答えを見つけることができませんでした)。 – Yster
@Yster - http://golang.org/pkg/math/big/#Int.SetString – BurntSushi5
@ BurntSushi5 - ありがとう!例:bigint.SetString( "123"、10) – Yster
を私は次のように使用:
bigint := big.NewInt(1231231231231)
bigstr := fmt.Sprint(bigint)
(bigint.String()をfmtのインタフェース{}の代わりに)直接呼び出す方が簡単で効率的です。 'fmt'パッケージを使用する唯一の理由は、特殊な書式を使用したい場合です。 –
私はbigint.String()を本当に大きなintで使用し、1.2123423534546e308のようなものを得ました – victorsamuelmd
あなたは受け入れ答えは説明して、文字列にBIGINTを変換するか、int型にする方法尋ね文字列に変換する方法のみ。
だから、あなたは2つの方法で整数にあなたのBIGINTに変換することができ、あなたのbigint := big.NewInt(123)
を持っている:.Int64()を使用して
yourInt := bigint.Int64()
yourUint := bigint.Uint64()
2つの方法の理由は、uintが2倍の大きさの数字を保持し、その答えが肯定的であることがわかっていることがあります。数値がint64/uint64で可能な最大値より大きい場合は、注意してください。
xをint64で表現できない場合、結果は不定です。
万全を期すために、ちょうどコメントPSTのための.String()bigstr := bigint.String()
おかげを使用し、文字列に変換します。数時間の検索の後、私はbigintsでドキュメントが素晴らしいとは言えません。例えば、私はまだ私の人生のために文字列からbigintに変換する方法を理解することができませんでした。 – Yster