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