加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Go语言中怎样判断数据类型

(2012-06-20 19:48:55)
今天群里有人问:在Go中怎样判断数据类型。

要判断数据类型,可以用Go的空接口:
建一个函数t 设置参数i 的类型为空接口,空接口可以接受任何数据类型
func t(i interface{}) {    //函数t 有一个参数i 
    switch i.(type) {      //多选语句switch
    case string:
        //是字符时做的事情
    case int:
        //是整数时做的事情
    }
    return
}

i.(type) 只能在switch中使用
这函数没有返回值,你可以自己加入
----------------------------------------------------------------------------
还可以用反射:
package main

import (
        "fmt"
        "reflect"
)

func main() {
        var x float64 = 3.4
        fmt.Println("type:", reflect.TypeOf(x))
}
这样就可以得出变量x的类型信息,与上面不同的是:上面的方法要先知到它是几个类型中的一个,而这个方法可以对任意对象使用

Go笔记,仅供自己参考,如果能帮到您,那是我的荣幸

0

阅读 收藏 喜欢 打印举报/Report
前一篇:Go语言之 slice
后一篇:指针
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有