GO学习笔记 - 数据类型推导
官方教程:https://tour.go-zh.org/basics/14
在定义一个变量却并不显式指定其类型时(使用 :=
语法或者 var =
表达式语法), 变量的类型由(等号)右侧的值推导得出。
当右值定义了类型时,新变量的类型与其相同:
var i int j := i // j 也是一个 int
但是当右边包含了未指名类型的数字常量时,新的变量就可能是 int
、 float64
或 complex128
。 这取决于常量的精度:
i := 42 // int f := 3.142 // float64 g := 0.867 + 0.5i // complex128
尝试修改演示代码中 v
的初始值,并观察这是如何影响其类型的。
官方示例:
package main import "fmt" func main() { v := 42 // change me! fmt.Printf("v is of type %T\n", v) }