go中any類型的使用詳解
前言
在沒有any類型之前,go語言中,我們經(jīng)常使用interface{},來表示一個類型是未知的,或者有好幾種其他基礎(chǔ)類型的情況,但在go1.18版本之后,新增了any類型,用來代替interface{}
any使用
go使用any使用
package main
import "fmt"
func say(data any) {
switch data.(type) {
case int:
fmt.Println("int")
case string:
fmt.Println("string")
}
}
func main() {
say(123)
}
輸出結(jié)果為

any轉(zhuǎn)換為類型
package main
import "fmt"
func say(data any) {
switch data.(type) {
case int:
b := data.(int) + 1
fmt.Println(b)
case string:
fmt.Println("string")
}
}
func main() {
say(123)
}
輸出結(jié)果為

any用在map
package main
import "fmt"
func main() {
m := make(map[string]any)
m["a"] = 1
m["b"] = "aaa"
for k, v := range m {
fmt.Println(k, v)
a, b := v.(int)
fmt.Println(a, b)
}
}
輸出結(jié)果為

總結(jié)
在go1.18之后,any關(guān)鍵字可以作為開發(fā)使用,不過看個人
到此這篇關(guān)于go中any類型的使用詳解的文章就介紹到這了,更多相關(guān)go any類型內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Go?數(shù)據(jù)結(jié)構(gòu)之二叉樹詳情
這篇文章主要介紹了?Go?數(shù)據(jù)結(jié)構(gòu)之二叉樹詳情,二叉樹是一種數(shù)據(jù)結(jié)構(gòu),在每個節(jié)點下面最多存在兩個其他節(jié)點。即一個節(jié)點要么連接至一個、兩個節(jié)點或不連接其他節(jié)點,下文基于GO語言展開二叉樹結(jié)構(gòu)詳情,需要的朋友可以參考一下2022-05-05
golang如何用type-switch判斷interface變量的實際存儲類型
這篇文章主要介紹了golang如何用type-switch判斷interface變量的實際存儲類型,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-04-04

