天天看點

golang無窮大的判斷

在golang中有時我們會用到表達式解析,目前常用的庫是

govaluate      

但在使用過程中發現,除數為0時并不會傳回error或者nil,而是傳回無窮大,下面教大家進行無窮大的判斷。

package main

import (
	"github.com/govaluate-master"
	"fmt"
	"math"
)

func main(){
	expression, _ := govaluate.NewEvaluableExpression("0 / 0");

	result, err := expression.Evaluate(nil);
	if err!=nil{
		fmt.Println(err.Error())
		return
	}
	if result!=nil{
		if math.IsInf(result.(float64),0)||math.IsNaN(result.(float64)){
			fmt.Println(result)
		}
	}
}


           

更多golang資訊交流,歡迎入群:805574759

golang無窮大的判斷