3.4.2 浮点数类型的变量

3.4.1节中介绍了整数类型的数据和变量,本小节我们再来看一下小数类型。计算机语言中将数学中的小数称作浮点数,这是由小数在计算机中的表达形式而产生的叫法(通过小数点的浮动来表示更大范围的小数)。在Go语言中常用的浮点数有两种:float32和float64。其中,float32类型的浮点数是由32个二进制位组成的,而float64则是由64个二进制位组成的。显而易见,float64类型的浮点数可以表达的数字范围更大或者精度更高。在实际应用中,我们可以自行选择使用float32还是float64作为变量类型,唯一需要考虑的是Go语言标准库或第三方库中的函数要求使用哪种类型。目前,Go语言标准库中大多数涉及浮点数计算的函数已经以使用float64参数为主,因此,建议定义变量类型时使用float64类型。

代码3-12演示了如何定义浮点数以及如何进行简单的运算。

package main

import (
  "fmt"
)

fun c main() {
   var x, y float64

  x = 1.2

  y = -3.31

  fmt.Println(x * y)
}

代码3-12 浮点数类型变量的声明和赋值

代码3-12中,定义了两个float64类型的变量x、y,并分别对其赋值为1.2和-3.31,然后用fmt.Println函数输出了两个变量相乘的结果,如图3.22所示。

图3.22 浮点数类型变量声明和赋值演示程序的执行结果

我们直接在LiteIDE中编译并运行该程序,方法是在“编译”菜单中选择“Build And Run”,或者直接使用快捷键“Ctrl+R”。在LiteIDE右下方的“编译输出”框内的输出信息表明,该软件先调用go build命令对test.go代码进行编译,之后执行生成的可执行文件test.exe并给出正确的计算结果-3.972。

实际上,与浮点数类型类似,整数类型也可以根据使用二进制位的数量分为int8、int16、int32和int64等类型,而前面例子中所用的int类型是一个会根据当前计算机环境自动调整二进制位数的特殊类型。例如,对于具有64位CPU的计算机,int类型的二进制位数将是64位。不过要注意,int类型至少应为32位。