gpt4 book ai didi

go - 检查枚举中是否存在值

转载 作者:IT王子 更新时间:2023-10-29 01:55:25 25 4
gpt4 key购买 nike

我在我的应用中创建了如下严格的规则:

type Datatype int8const (    user Datatype = iota    address    test)var datatypes = [...]string{"User", "Address", "Test"}func (datatype Datatype) String() string {    return datatypes[datatype]}

我希望能够针对此枚举验证通过命令行 标志传递的值。

我以为我看到了像 dtype == Datatype 这样的东西被使用,但我显然大错特错了。

如果这不可能,我可以采用将这些值放入数组中的方法。但是,我觉得枚举方法更优雅。

最佳答案

从您的代码示例来看,您似乎在尝试查看映射(而不是结构)是否包含特定键。

如果是,答案是here

A two-value assignment tests for the existence of a key:

i, ok := m["route"] 

In this statement, the first value (i) is assigned the value stored under the key "route". If that key doesn't exist, i is the value type's zero value (0). The second value (ok) is a bool that is true if the key exists in the map, and false if not.

To test for a key without retrieving the value, use an underscore in place of the first value:

_, ok := m["route"]

关于go - 检查枚举中是否存在值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29664830/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com