首页> 基础笔记 >GoLang基础学习 >基础知识 基础知识
GoLang数据类型-小数类型/浮点型介绍
作者:小萝卜 2023-03-29 【 GoLang 】 浏览 265
简介小数类型就是用于存放小数的,比如 1.2 0.23 -1.911
小数类型/浮点型
基本介绍
小数类型就是用于存放小数的,比如 1.2 0.23 -1.911
小数类型分类
对上图的说明:
1)关于浮点数在机器中存放形式的简单说明,浮点数=符号位+指数位+尾数位
说明:浮点数都是有符号的.
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)
2)尾数部分可能丢失,造成精度损失。 -123.0000901
//尾数部分可能丢失,造成精度损失。 -123.0000901
var num3 float32 = -123.0000901
var num4 float64 = -123.0000901
fmt.Println("num3=", num3, "num4=", num4)
说明:float64的精度比 float32的要准确.
说明:如果我们要保存一个精度高的数,则应该选用 float64
3)浮点型的存储分为三部分:符号位+指数位+ 尾数位在存储过程中,精度会有丢失
浮点型使用细节
1) Golang浮点类型有固定的范围和字段长度,不受具体 OS(操作系统)的影响。
2) Golang的浮点型默认声明为 float64类型。
//Golang 的浮点型默认声明为float64 类型
var num5 = 1.1
fmt.Printf("num5的数据类型是 %T \n", num5)
3)浮点型常量有两种表示形式
十进制数形式:如:5.12 .512 (必须有小数点)
科学计数法形式:如:5.1234e2 = 5.12 * 10的 2次方
5.12E-2 = 5.12/10的 2次方
//十进制数形式:如: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次方 shift+alt+向下的箭头
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))
4)通常情况下,应该使用 float64,因为它比 float32更精确。[开发中,推荐使用 float64]
很赞哦! (0)