![](/img/trans.png)
[英]what's the difference between `reflect.ValueOf(&x).Elem` and `reflect.ValueOf(x)` in go?
[英]In Go, what's the inverse of reflect.SliceOf()?
在Go中, reflect.SliceOf()
使一個Type表示給定Type的切片:
SliceOf返回元素類型為t的切片類型。 例如,如果t表示int,則SliceOf(t)表示[] int。
但是,我已經有一個Type for []int
但是想要獲得一個Type for int
。 有一個簡單的方法嗎? (注意,我使用int
作為示例。實際上,我所知道的是我有一個切片,我需要找到切片的每個元素的類型。)
我正在嘗試使用反射從[]string
填充bool,int,float或string的切片...這是相關的部分:
numElems := len(req.Form["keyName"])
if structField.Kind() == reflect.Slice && numElems > 0 {
slice := reflect.MakeSlice(structField.Type(), numElems, numElems)
for i := 0; i < numElems; i++ {
// I have some other code here to fill out the slice
}
}
但是為了填寫切片,我需要知道我填寫的切片的類型...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.