本文共 1531 字,大约阅读时间需要 5 分钟。
小数类型就是用于存放小数的,比如 1.2 0.23 -1.911。
浮点数都是有符号的.
float64 的精度比 float32 的要准确。
如果我们要保存一个精度高的数,则应该选用 float64。
十进制数形式:如:5.12 .512 (必须有小数点)。
科学计数法形式:如:5.1234e2 = 5.12 * 10 的 2 次方 5.12E-2 = 5.12/10 的 2 次方。
开发中,推荐使用 float64。
package mainimport ( "fmt" "unsafe")// 演示 golang 中小数类型使用func main() { var price float32 = 89.12 fmt.Println("price=", price) var num1 float32 = -0.00089 var num2 float64 = -7809656.09 fmt.Println("num1=", num1, "num2=", num2) // 尾数部分可能丢失,造成精度损失。 -123.0000901 var num3 float32 = -123.0000901 var num4 float64 = -123.0000901 fmt.Println("num3=", num3, "num4=", num4) // Golang 的浮点型默认声明为 float64 类型 var num5 = 1.1 fmt.Printf("num5的数据类型是 %T \n", num5) // 十进制数形式:如:5.12 .512 (必须有小数点) num6 := 5.12 num7 := .123 // 0.123 fmt.Println("num6=", num6, "num7=", num7) // 科学计数法形式 num8 := 5.1234e2 // 5.1234 * 10的2次方 num9 := 5.1234E2 // 5.1234 * 10的2次方 num10 := 5.1234E-2 // 5.1234 / 10的2次方 = 0.051234 fmt.Println("num8=", num8, "num9=", num9, "num10=", num10) var c1 rune = '北' fmt.Println("c1=", c1, unsafe.Sizeof(c1))}
price= 89.12num1= -0.00089 num2= -7.80965609e+06num3= -123.00009 num4= -123.0000901num5的数据类型是 float64num6= 5.12 num7= 0.123num8= 512.34 num9= 512.34 num10= 0.051234c1= 21271 4
转载地址:http://hyhj.baihongyu.com/