else if math / bigの条件

ダビデ

大きな数値を比較しようとしていますが、文字列値しか取得できません。では、で条件をどのように実行しますかbig.Int以下は私が試したものに最も近いものです。

package main

import (
    "fmt"
    "math/big"
)

func main() {

    dirtyVal := "9446744073709551615"
    dv := big.NewInt(0)
    dv.SetString(dirtyVal, 10)
    userVal := dv.String()

    maxVal := "18446744073709551615"
    mv := big.NewInt(0)
    mv.SetString(maxVal, 10)
    // maxValue := mv.String()

    if userVal > maxVal {
        fmt.Println("True")
    } else {
        fmt.Println("False")
    }

}
siritinga

func (*Int) Cmp2つのbig.Inthttp://golang.org/pkg/math/big/#Int.Cmpを比較するために使用できます

if dv.Cmp(mv)>0 {
    fmt.Println("True")
} else {
    fmt.Println("False")
}

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事