Go語言的any
關鍵字用法如下。
Go 1.18加入泛型(generics)時新增了any
關鍵字代表型別參數(type parameter)的限制型別可為任意型別,也可用在一般變數的型別宣告。
any
其實是空介面interface{}
的別名,兩者效果相同。
main.go
package main
import "fmt"
type Employee struct {
Id int
Name string
}
func printValueAndType(i any) { // take any as parameter
fmt.Printf("value=%v, type=%T\n", i, i)
}
func main() {
var i any // declare var as any type
i = "abc"
printValueAndType(i) // value=abc, type=string
i = 123
printValueAndType(i) // value=123, type=int
i = Employee{1, "John"}
printValueAndType(i) // value={1 John}, type=main.Employee
}
沒有留言:
張貼留言