登录
首页 >  Golang >  Go问答

如何确定 interface{} 值的“真实”类型?

来源:Golang技术栈

时间:2023-03-23 08:27:34 174浏览 收藏

有志者,事竟成!如果你在学习Golang,那么本文《如何确定 interface{} 值的“真实”类型?》,就很适合你!文章讲解的知识点主要包括golang,若是你对本文感兴趣,或者是想搞懂其中某个知识点,就请你继续往下看吧~

问题内容

我还没有找到使用interface{}类型的好资源。例如

package main

import "fmt"

func weirdFunc(i int) interface{} {
    if i == 0 {
        return "zero"
    }
    return i
}
func main() {
    var i = 5
    var w = weirdFunc(5)

    // this example works!
    if tmp, ok := w.(int); ok {
        i += tmp
    }

    fmt.Println("i =", i)
}

你知道使用 Go 的好介绍interface{}吗?

具体问题:

  • 如何获得 w 的“真实”类型?
  • 有什么办法可以得到一个类型的字符串表示?
  • 有没有办法使用类型的字符串表示来转换值?

正确答案

你的例子确实有效。这是一个简化版本。

package main

import "fmt"

func weird(i int) interface{} {
    if i 

它使用类型断言

好了,本文到此结束,带大家了解了《如何确定 interface{} 值的“真实”类型?》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多Golang知识!

声明:本文转载于:Golang技术栈 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表