假设我有以下结构:

type myType struct {
    Qid, Interval, RoundNumber string
}

并且我必须确保类型myType的变量的任何属性都没有空字符串值。

如果发生以下情况,是否有比以下方法更惯用的方式:
if aMyType.Qid == "" || aMyType.Interval == "" || aMyType.RoundNumber == "" {
  // handle error situation
}

显然,if可行,但我想知道Go是否有更好的方法?

最佳答案

您可以在myType上定义一个函数,以使其更容易确定有效性:

func (m myType) Valid() bool {
    return m.Qid != "" && m.Interval != "" && m.RoundNumber != ""
}

接着:
if aMyType.Valid() {
    // ...
}

10-06 08:43