我是靠谱客的博主 文艺宝马,这篇文章主要介绍golang处理NAN值,现在分享给大家,希望可以做个参考。

go中,除数为0时并不会返回error或者nil,而是返回无穷大---> NAN(正无穷),表明数字太大溢出的情况

函数math.IsNaN可以测试一个数值是否是NaN,math.NaN的返回值是一个NaN值。

任何值跟NaN比较的结果都是false,比如:

package main

import (
	"fmt"
	"math"
	"reflect"
	//"os"
)
func main(){

	a:= math.NaN()

	if a == math.NaN() {
		fmt.Println("--------",a)

	}
	fmt.Println(a)
	fmt.Println(reflect.TypeOf(a))
	fmt.Println(reflect.TypeOf(math.NaN()))

}

执行结果:

那么怎么处理NAN值呢,用math.IsNaN()

func main(){

	a:= math.NaN()

	if math.IsNaN(a) {
		fmt.Println("--------",a)

	}
	fmt.Println(a)
	fmt.Println(reflect.TypeOf(a))
	fmt.Println(reflect.TypeOf(math.NaN()))

}

执行结果:

最后

以上就是文艺宝马最近收集整理的关于golang处理NAN值的全部内容,更多相关golang处理NAN值内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(116)

评论列表共有 0 条评论

立即
投稿
返回
顶部