牛骨文教育服务平台(让学习变的简单)
博文笔记

golang: 类型转换和类型断言

创建时间:2014-01-22 投稿人: 浏览次数:35964
类型转换在程序设计中都是不可避免的问题。当然有一些语言将这个过程给模糊了,大多数时候开发者并不需要去关注这方面的问题。但是golang中的类型匹配是很严格的,不同的类型之间通常需要手动转换,编译器不会代你去做这个事。我之所以说通常需要手动转换,是因为interface类型作为一个特例,会有不同的处理方式。 golang Comma-ok switch测试 类型转换 类型断言

类型转换在程序设计中都是不可避免的问题。当然有一些语言将这个过程给模糊了,大多数时候开发者并不需要去关注这方面的问题。但是golang中的类型匹配是很严格的,不同的类型之间通常需要手动转换,编译器不会代你去做这个事。我之所以说通常需要手动转换,是因为interface类型作为一个特例,会有不同的处理方式。

golang中的所有类型都有自己的默认值,对此我做了个测试。

$GOPATH/src

----typeassert_test

--------main.go

main.go的代码如下:

01 package main
02  
03 import (
04     "fmt"
05 )
06  
07 type myStruct struct {
08     name   bool
09     userid int64
10 }
11  
12 var structZero myStruct
13 var intZero int
14 var int32Zero int32
15 var int64Zero int64
16 var uintZero uint
17
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。