首页 > 代码库 > [Go] ok 判断 汇总

[Go] ok 判断 汇总

1、判断 类型

类似于 JavaScript 中 typeof 和 Java 中 instanceof

var a interface{}newA, ok := a.(string)// 如果 ok 是 true,则说明 变量 a 是字符串类型,而 newA 就是 string 类型的变量,a 的实际值//

2、判断 key 是否在 map 中

func main() {	var nameList = map[string]string{"姓名": "李四", "性别": "男"}	name, ok := nameList["姓名"] // 假如 key 存在,则 ok = true,否则,ok = false	if ok {		fmt.Println(name)	}}

3、判断 channel 是否 已关闭 且 没有数据

for {    x, ok := <-chantest    if !ok {        break // 通道 已关闭 且 没有数据,则跳出循环    }}

[Go] ok 判断 汇总