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
,則不會報錯,輸出結果跟之前一樣!