本文描述了go语言中常用的一些类型别名和接口的定义和使用说明, 最为常用的就是 byte, rune, Type, any还有 error , 详情如下:
8位无符号整数,表示范围 0--127
type uint8 uint8
byte
uint8的别名,用来表示8位无符号整数, 这个无需多言了,go里面使用最多的数据类型
type byte = uint8
rune
这个是int32的别名, 这个一般用它来区分字符值和整数值。
在对多字节的字符串进行字符统计的时候就需要将字符转换为[]rune切片后才能正确统计字符数量
从底层的原理来说 字符默认用的是 byte,这个1个byte在内存中占8位,所能表示的整数范围0--127,
而双字节的字符转换为unicode的ascii码后数值肯定大于127,所以如果不转换为更大的数据类型,就必然会有乱码
type rune = int32
这个是空类型, 可见他是Type的别名,而Type又是int的别名
var nil Type
int类型的别名
type Type int
空接口的别名,用于表示任意类型的数据
type any = interface{}
可比较类型的接口,这个一般用于泛型的类型约束,非数据类型
type comparable interface{ comparable }
全局的错误接口定义,Error()是方法 返回具体的错误信息
type error interface {
Error() string
}