我还没有找到一个好的资源来学习如何使用 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的“真实”类型?
- 有没有办法获取类型的字符串表示形式?
- 有没有办法使用类型的字符串表示形式来转换值?