Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
272 views
in Technique[技术] by (71.8m points)

Go 变量定义疑问

请教在以下代码中, ia 变量到底是什么类型呢

func main() {
    ia := []interface{}{byte(6), 'a', uint(10), int32(-4)}
    // var numbers = [3]int{1, 2, 3}
    switch v := ia[rand.Intn(4) % 2 ]; interface{}(v).(type) {
    case int32 :
        fmt.Printf("Case A.")
    case byte :
        fmt.Printf("Case B.")
    default:
        fmt.Println("Unknown!")
    }
}

这个方法中

ia := []interface{}{byte(6), 'a', uint(10), int32(-4)}

这个变量声明怎么解释呢


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

就是一个slice, 元素类型为interface{}; 可以理解为可以存入任何类型的数组


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...