golang,int类型不支持索引

golang,int类型不支持索引,第1张

概述我在部分代码中遇到了麻烦.我正在写revel框架(要清楚).这是一个工作日常规,我希望它做几件事: >切换stat变量的struct类型 来源,即将来临.我做了一个开关,但在所有其他之前 代码是正确的,我真的不知道是否写了开关 正常. >我获取日期的缓存,并将其放入新的工作项. >我发送工作到频道 这是我现在得到的: func worker(in <-chan Task, out chan <- 我在部分代码中遇到了麻烦.我正在写revel框架(要清楚).这是一个工作日常规,我希望它做几件事:

>切换stat变量的struct类型
来源,即将来临.我做了一个开关,但在所有其他之前
代码是正确的,我真的不知道是否写了开关
正常.
>我获取日期的缓存,并将其放入新的工作项.
>我发送工作到频道

这是我现在得到的:

func worker(in <-chan Task,out chan <- Work,wg *sync.WaitGroup) {    for t := range in {        for sourcename,charts := range t.Request.Charts {            var stat interface{}            switch sourcename {            case "noagg":                 stat = stat.([]NoaggModel)            case "oracle":                stat = stat.([]OracleModel)            default:                panic("InvalID type for Work model!")            }            w := Work{name:"",Data:""}            err := cache.Get(string(sourcename)+"_"+string(t.Date),&stat);            for chart := range charts{                w.name = chart["name"]                if err == nil{                    w.Data = countDataByname( stat,t.Request.Filters,string(chart["name"]))                }                out <- w            }        }    }    wg.Done() // this worker is Now done; let the WaitGroup kNow.}

但是现在我得到了无效 *** 作的错误:chart [“name”](类型int不支持索引)

但我结构:

type Chart struct {    name string           `Json:"name"`    Type string           `Json:"type"`}type Filter struct {    DayStart string `Json:"dayStart"`    DayEnd string `Json:"dayEnd"`    TimePeriods interface{} `Json:"timePeriods"`    lines []string `Json:"lines"`}type Task struct {    Date string    Request Chartoptins}type Work struct {    name string    Data interface{}}

如果缓存的结构类型可能不同,我应该如何以更好的方式编写正确的开关,为什么我的名称添加错误并且调用错误?

解决方法 切片中的for缺少变量

for chart := range charts{

在切片上迭代时,第一个变量是键,第二个变量是您想要的实际值.在这种情况下,您可以省略键(int),因此应该正确的指令

for _,chart := range charts{
总结

以上是内存溢出为你收集整理的golang,int类型不支持索引全部内容,希望文章能够帮你解决golang,int类型不支持索引所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1265596.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-08
下一篇 2022-06-08

发表评论

登录后才能评论

评论列表(0条)

保存