如何在golang中读取float符号?
发布时间:2020-12-16 19:03:24 所属栏目:大数据 来源:网络整理
导读:从结构图中打印出一些值时.我看到某些float64值与替代表示法.测试通过,但你如何阅读这个符号(4e-06).这个值确实与“0.000004”相同吗? package mainimport ( "fmt" "strconv" "testing")func TestXxx(t *testing.T) { num := fmt.Sprintf("%f",float64(1.22
从结构图中打印出一些值时.我看到某些float64值与替代表示法.测试通过,但你如何阅读这个符号(4e-06).这个值确实与“0.000004”相同吗?
package main import ( "fmt" "strconv" "testing" ) func TestXxx(t *testing.T) { num := fmt.Sprintf("%f",float64(1.225788)-float64(1.225784)) // 0.000004 f,_ := strconv.ParseFloat(num,64) if f == 0.000004 { t.Log("Success") } else { t.Error("Not Equal",num) } if getFloat(f) == 0.000004 { t.Log("Success") }else{ t.Error("Fail",getFloat(f)) } } func getFloat(f float64) float64 { fmt.Println("My Float:",f) // 4e-06 return f }
这种表示法称为
Scientific notation,它是以紧凑,简短的形式打印非常小或非常大的数字的便捷方式.
它的形式是
(m乘十次提升到n的力量) 在编程语言中,它被编写/打印为:
见Spec: Floating-point literals. 您的号码:4e-06,其中m = 4且n = -6,这意味着4 * 10-6等于0.000004. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |