类型断言

golang: 类型转换和类型断言

核能气质少年 提交于 2019-12-02 22:45:51
类型转换在程序设计中都是不可避免的问题。当然有一些语言将这个过程给模糊了,大多数时候开发者并不需要去关注这方面的问题。但是golang中的类型匹配是很严格的,不同的类型之间通常需要手动转换,编译器不会代你去做这个事。我之所以说通常需要手动转换,是因为interface类型作为一个特例,会有不同的处理方式。 golang中的所有类型都有自己的默认值,对此我做了个测试。 $GOPATH/src ----typeassert_test --------main.go main.go的代码如下: package main import ( "fmt" ) type myStruct struct { name bool userid int64 } var structZero myStruct var intZero int var int32Zero int32 var int64Zero int64 var uintZero uint var uint8Zero uint8 var uint32Zero uint32 var uint64Zero uint64 var byteZero byte var boolZero bool var float32Zero float32 var float64Zero float64 var stringZero string var