首页 > 代码库 > A Tour of Go Type conversions

A Tour of Go Type conversions

The expression T(v) converts the value v to the type T.

Some numeric conversions:

var i int = 42var f float64 = float64(i)var u uint = uint(f)

Or, put more simply:

i := 42f := float64(i)u := uint(f)

Unlike in C, in Go assignment between items of different type requires an explicit conversion. Try removing the float64 or int conversions in the example and see what happens.

package main import (    "fmt"    "math")func main() {    var x, y int = 3, 4    var f float64 = math.Sqrt(float64(x*x + y*y))    var z int = int(f)    fmt.Println(x, y, z)}

 

A Tour of Go Type conversions