在Go语言中,type
关键字有以下几种用法:
定义自定义类型:type Ttype int
,这里定义了一个名为Ttype的类型,它是一个int类型的别名。
定义结构体:type Person struct {Name string; Age int}
,这里定义了一个名为Person的结构体,它包含Name和Age两个字段。
定义接口:type Writer interface {Write(p []byte) (n int, err error)}
,这里定义了一个名为Writer的接口,它包含一个Write方法。
定义函数类型:type Add func(a, b int) int
,这里定义了一个名为Add的函数类型,它接收两个int类型的参数,并返回一个int类型的结果。
定义方法:func (p *Person) SayHello() {fmt.Println("Hello", p.Name)}
,这里给Person类型定义了一个SayHello方法。
类型断言:value, ok := x.(T)
,这里用于判断x是否为类型T的实例,并返回其对应的值和布尔值结果。
类型转换:y := T(x)
,这里将x转换为类型T,其中T可以是内置类型或自定义类型。