天天看点

Go语言学习心得--Go语言类型的转换

类型转换用于将一种数据类型的变量转换为另外一种类型的变量。

还是老规矩,说Go语言的类型转换之前,我们先说一下这个JAVA中的类型转换吧。

首先先说数据类型的转换,分为了2种,一种是自动转换,一种是强制类型转换,

自动类型转换是从低类型,可以直接转换为高类型,不同类型数据间的优先关系如下:

byte,short,char-> int -> long -> float -> double

Go语言学习心得--Go语言类型的转换

这都是自动类型转换的,还有一种就是强制类型转换的了。

强制转换的格式是在需要转型的数据前加上“( )”,然后在括号内加入需要转化的数据类型。有的数据经过转型运算后,精度会丢失,而有的会更加精确,

Go语言学习心得--Go语言类型的转换

由于在 34.56 前有一个 int 的强制类型转化,所以 34.56 就变成了 34。同样 11.2 就变成了 11 了,所以 x 的结果就是 45。在 x 前有一个 double 类型的强制转换,所以 x 的值变为 45.0,而 10 的前面也被强制成 double 类型,所以也变成 10.0,所以最后 y 的值变为 56。

这就是JAVA语言中的类型转换。

下面我们看Go语言中的类型转换

基本定义格式如下

type_name(expression)
type_name 为类型,expression 为表达式。
           

然后我们写个实例将整型转化为浮点型,并计算结果,将结果赋值给浮点型变量

Go语言学习心得--Go语言类型的转换

实例结果就如下

Go语言学习心得--Go语言类型的转换

这就是Go语言中类型转换