golang if 判断map 中是否包含指定的key 并且value是string 并且值不能为空 使用 运算符进行多条件的组合判断
在Go语言中,可以使用if语句结合逻辑运算符进行多条件组合判断。下面是一个示例代码,用于判断一个map中是否包含指定的key,并且对应的value是string类型且值不能为空:
package main
import "fmt"
func main() {
m := map[string]interface{}{
"name": "John",
"age": 30,
"email": "",
}
key := "email"
if val, ok := m[key]; ok && val != "" && fmt.Sprintf("%T", val) == "string" {
fmt.Println("The map contains the specified key with a non-empty string value.")
} else {
fmt.Println("The map does not satisfy the specified conditions.")
}
}
在上述代码中,我们首先定义了一个map,然后指定了要判断的key。在if语句中,我们使用了逻辑与运算符&&来组合多个条件:
ok用于判断map中是否存在指定的key;val != ""用于判断对应的value是否为空字符串;fmt.Sprintf("%T", val) == "string"用于判断对应的value是否是string类型。
如果以上所有条件都满足,那么就会执行if语句中的代码块,否则执行else语句中的代码块。
原文地址: https://www.cveoy.top/t/topic/hLsi 著作权归作者所有。请勿转载和采集!