Go 浮点数数据类型
Go 浮点数据类型
浮点数据类型用于存储带小数点的正数和负数,如 35.3、-2.34 或 3597.34987。
浮点数数据类型有两个关键字:
类型 | 大小 | 范围 |
---|---|---|
float32 |
32 位 | -3.4e+38 到 3.4e+38 |
float64 |
64 位 | -1.7e+308 到 +1.7e+308 |
提示:浮点数的默认类型是 float64
。如果您不指定类型,那么类型将是 float64
。
float32 关键字
实例
此例展示了如何声明一些 float32
类型的变量:
package main import ("fmt") func main() { var x float32 = 123.78 var y float32 = 3.4e+38 fmt.Printf("Type: %T, value: %v\n", x, x) fmt.Printf("Type: %T, value: %v", y, y) }
float64 关键字
float64
数据类型可以存储比 float32
更大的数字集。
实例
此例展示了如何声明 float64
类型的变量:
package main import ("fmt") func main() { var x float64 = 1.7e+308 fmt.Printf("Type: %T, value: %v", x, x) }
应该使用哪种浮点数类型?
选择哪种浮点数类型,取决于变量必须存储的值。
实例
此例将导致错误,因为 3.4e+39 超出了 float32
的范围:
package main import ("fmt") func main() { var x float32= 3.4e+39 fmt.Println(x) }
结果:
./prog.go:5:7: constant 3.4e+39 overflows float32