美文网首页
Golang Tip:判断两个类型之间是否能转换

Golang Tip:判断两个类型之间是否能转换

作者: 幸运排骨虾 | 来源:发表于2018-05-10 18:53 被阅读0次

主要用到Go语言的反射(reflect)reflect.Type接口有一个方法ConvertibleTo就是判断一个类型是否能转换为另一个类型。

package main

import (
    "fmt"
    "reflect"
)

type Address [20]byte

func main() {
    fmt.Println("Hello, playground")
    
    //v := make([]byte,20)
    var v [20]byte
    vtype := reflect.ValueOf(v).Type()
    fmt.Printf("type slice:%v\n", vtype)
    
    var addr Address
    atype := reflect.ValueOf(addr).Type()
    fmt.Printf("type address:%v\n", atype)
    
    fmt.Println("convertible:", vtype.ConvertibleTo(atype))
    
}

相关文章

  • Golang Tip:判断两个类型之间是否能转换

    主要用到Go语言的反射(reflect)。reflect.Type接口有一个方法ConvertibleTo就是判断...

  • C++类型转换

    static_cast 静态转换类似于C风格显式转换,但是会判断转换类型之间的关系,如果转换类型之间没有任何关系,...

  • 知识分享之Golang——常用的类型转换int、string、f

    知识分享之Golang——常用的类型转换int、string、float互相转换 背景 知识分享之Golang篇是...

  • Go strconv

    Golang的strconv包主要实现字符串和基本数据类型之间的转换 转换错误处理 字符串转换过程中可能出错,st...

  • js 总结四 07-12

    switch typeof判断类型 类型转换

  • 4_类型转换

    关键词:类型之间的转换、强制类型转换、隐式类型转换 1. 类型之间的转换 C语言中的数据类型可以进行转换,转换方式...

  • Golang int与string类型转换

    总结了golang中字符串和各种int类型之间的相互转换方式: string转成int: string转成int6...

  • 第8章 面向对象的特性-多态

    1. 引用数据类型的类型转换 引用数据类型转换的前提是:转换的两个对象之间必须存在继承或者实现关系引用数据类型的转...

  • js函数中的if判断和a==b判断

    if判断 括号内的表达式,会被强制转换为布尔类型 原理 a==b的判断的规则如下: 1、如果两个值类型相同,进行 ...

  • 18、【Swift】类型转换

    使用场景:判断实例的类型转换实例的类型 检查类型: is 转换类型: as 检查是否遵循某个协议 为类型转换定义类...

网友评论

      本文标题:Golang Tip:判断两个类型之间是否能转换

      本文链接:https://www.haomeiwen.com/subject/kectcxtx.html