教程集 www.jiaochengji.com
教程集 >  Golang编程  >  golang教程  >  正文 go语言类型断言

go语言类型断言

发布时间:2022-01-17   编辑:jiaochengji.com
教程集为您提供go语言类型断言等资源,欢迎您收藏本站,我们将为您提供最新的go语言类型断言资源
<h2><span style="color:#3399ea;">1、断言类型的判断</span></h2>

Go语言里面有一个语法,可以直接判断是否是该类型的变量: value, ok = element.(T),这里value就是变量的值,ok是一个bool类型,element是interface变量,T是断言的类型。

如果element里面

确实存储了T类型的数值,那么ok返回true,否则返回false

<pre class="has"><code class="language-Go">package main import ( "fmt" ) func main() { var i []interface{} i=append(i,"jiangzhou",666,88.88,[]string{"hello","江洲"},map[string]int{"001":123456,"002":654321}) fmt.Println("遍历方法一:") for j:=0;j< len(i);j { fmt.Println(i[j]) } fmt.Println("遍历方法二:") for index,value:=range i{ fmt.Println(index,value) } fmt.Println("执行断言方法一:")//输出整型类型的数据 for _,value:=range i{ data,ok:=value.(int) if ok { fmt.Println(data) } } fmt.Println("--------------------------------------------------") for _,data:=range i{ //通过循环判断,输出多种数据类型 if v,ok:=data.(int);ok{ fmt.Println("整型数据是:",v) }else if v,ok:=data.(float64);ok{ fmt.Println("浮点型数据是:",v) }else if v,ok:=data.([]string) ;ok{ fmt.Println("[]string 切片型数据是:",v) }else if v,ok:=data.(map[string]int);ok { fmt.Println("map[string]int 散列表型数据是:",v) }else if v,ok:=data.(string) ;ok{ fmt.Println("String型数据是:",v) }else{ fmt.Println("其他类型的数据是:",data) } } } </code></pre> <h2><span style="color:#3399ea;">2、断言数据的判断</span></h2> <pre class="has"><code class="language-Go">fmt.Println("断言数据的判断:") if n,err:=fmt.Println("hello jiangzhou");err==nil { fmt.Println("数据为:",n) }</code></pre>

➢<span style="color:#f33b45;">了解更多Go语言知识</span>:https://study.163.com/course/introduction/1210620804.htm

到此这篇关于“go语言类型断言”的文章就介绍到这了,更多文章或继续浏览下面的相关文章,希望大家以后多多支持JQ教程网!

您可能感兴趣的文章:
Golang 基础教程
go语言类型断言
从零学习 Go 语言(24):理解 Go 语言中的 goroutine
【golang】类型转换和类型断言
golang的类型转换(断言等)
Go语言的空接口,接口类型断言
Golang 类型转换、类型断言与类型选择
Go语言中interface{}所属类型判断,两种实现方式
Go语言开发必读书目,从菜鸟到大牛必备
Go 语言到底适合干什么?

[关闭]
~ ~