首页> 基础笔记 >GoLang基础学习 >基础知识 基础知识

GoLang数据类型-小数类型/浮点型介绍

作者:小萝卜 2023-03-29 浏览 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)

文章评论

    高端网站建设