Go——两个整型数相除如何得到一个浮点型数

Go语言里,对两个不同类型的变量进行运算操作,是不允许的!

所以,需要将两个整型数都转化为浮点数方能进行运算

func Test1()  {
	var i=10
	var j=3
	var sum1,sum2 float64
	i1:=float64(i)
	j1:=float64(j)

	sum1=i1/j1
	sum2=(float64(i / j))
	fmt.Println("sum1=",sum1, "****", "sum2=",sum2)
	fmt.Println("sum2的类型为:", reflect.TypeOf(sum2))
}

输出结果为:

sum1= 3.3333333333333335 **** sum2= 3
sum2的类型为: float64

上述中,如果添加一行(更换sum1的值) sum1=float64(i)/j,则会报错:

Invalid operation: float64(i)/j (mismatched types float64 and int)

但是,如果添加的是 sum1=float64(i)/3,则不会报错,输出结果跟之前一样!

猜你喜欢

转载自blog.csdn.net/WU2629409421perfect/article/details/106137298