2014-04-14 89 views
0

我試圖對大數進行比較,但只能得到字符串值。 那麼你如何做一個big.Int條件。下面是最接近我嘗試過的。if else condition with math/big

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") 
    } 

} 
+0

你可以用'如果dv.Cmp(MV)> 0'比較兩個big.Int – siritinga

+0

@siritinga我已經使用「Cmp()」但它不確定,謝謝 – david

+0

使用big.Int有點棘手,是的。在鏈接操作時,我遇到了一些問題,每行編寫一個操作更容易,讀起來更容易。 – siritinga

回答