我有很多if语句
anotherName : ="ABC"
if len(dict) > 0 {
if _, ok := dictA["Name"]; ok {
if fName, ok := dataDict["Name"]; ok {
if fName== "SAM" {
if len(dict) > 1 {
mainDict[anotherName] = dict
}
}
}
}
}
我不想使用这么多if语句。我想使用运算符,但在这种情况下我无法在这里使用它们。
任何人都可以让我知道。
答案 0 :(得分:1)
我能想到的一些选择。不确定您是否更喜欢它或它是否适用于您的代码:
1)在一个函数中(在循环中使用break
):
anotherName : ="ABC"
if len(dict) = 0 {
return
}
if _, ok := dictA["Name"]; !ok {
return
}
if fName, ok := dataDict["Name"]; !ok {
return
}
if fName== "SAM" && len(dict) > 1 {
mainDict[anotherName] = dict
}
2)不使用ok
检查,但检查nil
:
anotherName : ="ABC"
if len(dict) > 0 && dictA["Name"] != nil && dataDict["Name"] != nil && dataDict["Name"] == "SAM" && len(dict) > 1 {
mainDict[anotherName] = dict
}
也许您还可以取消对len(dict) > 0
和len(dict) > 1
。