我有两种获取清单的方法。
以上结果导致两种类型的数据[] interface {}和[] string,这些操作与我必须根据类型分别执行相同操作的操作不兼容。
此外,我将数组转换为map [string] int,键为字符串,值为1.我将其转换为地图,以便快速检查原始数组中的某些属性
问题是否有解决办法,最佳方法是什么?
答案 0 :(得分:2)
使用以下代码从字符串map[string]int
中的逗号分隔值创建s
:
m := make(map[string]int)
for _, p := range strings.Split(s, ",") {
m[p] = 1
}
使用以下代码从[{1}} map[string]int
values
创建[]interface{}
:
m := make(map[string]int)
for _, v := range values {
s, ok := v.(string)
if !ok {
// not a string, handle error
}
m[s] = 1
}