类型转换
目录:程序员成长之旅/Go语言学习/笔记
类型转换
表达式 T(v) 将值 v 转换为类型 T。
一些关于数值的转换: var i int = 42 var f float64 = float64(i) var u uint = uint(f)
或者,更加简单的形式: i := 42 f := float64(i) u := uint(f)
与 C 不同的是 Go 的在不同类型之间的项目赋值时需要显式转换。 试着移除例子中 float64 或 int 的转换看看会发生什么。
package main import ( "fmt" "math" ) //注意观察就会发现,这些类型都是普通的类型转换(在Go中没有隐式类型转换),并非是强制类型转换 func main() { var x, y int = 3, 4 var f float64 = math.Sqrt(float64(xx + yy)) var z int = int(f) fmt.Println(x, y, z) }
14
1 package
main 2 3 import ( 4
"fmt" 5
"math" 6 ) 7 //注意观察就会发现,这些类型都是普通的类型转换 ( 在Go中没有隐式类型转换 ) ,并非是强制类型转换 8 func
main () { 9
var
x , y
int
=
3 , 4 10
var
f
float64
=
math . Sqrt ( float64 ( x * x
y * y )) 11
var
z
int
=
int ( f ) 12
fmt . Println ( x , y , z ) 13 } 14