从地图中获取任何项目而无需循环

时间:2019-05-07 20:19:40

标签: go

package main

import ()

type Scope struct {
    Type   int // 1,2,3
    Parent *Scope
}

func main() {

    scopes := map[*Scope]string{}
    filter(scopes)
}

// key is always the same type of scopes
func filter(scopes map[*Scope]string) {
    // This function only works for scopes of Type 1,3
    // if the Type is 2 return
    // I just need to pick any item in the map to do a check

    for k := range scopes {
        if k.Type == 2 {
            return
        } else {
            break
        }
        // Do something
    }
}

我必须检查地图键的类型。 地图的键是同一类型。 所以我只需要从地图上选择任何物品即可。

for k := range scopes {
        if k.Type == 2 {
            return
        } else {
            break
        }
        // Do something
    }

此代码进行检查,但是有没有办法做到这一点而又不发展循环?

0 个答案:

没有答案