一、介绍
go 在 1.18 终于加上了泛型。那么在之前,咱们都没有用 10 几年了,始终用。
加上泛型后,到底益处在哪里呢,解决了那些场景的痛点呢?
泛型次要在于演绎,泛型 - 代表能够多余一种类型。
作为入门的文章,次要介绍两种泛型的应用场景
- 作为形参
- 作为构造体
1.1 泛型作为形参
咱们来看一下,在比拟两个数的大小时,没有泛型的时候,仅仅只是传入类型不一样,咱们就要再写一份截然不同的函数。
// maxInt64 获取 j,j 中的最大值
func maxInt64(i, j int64) int64 {
if i >= j {return i}
return j
}
// maxInt32 获取 j,j 中的最大值
func maxInt32(i, j int32) int32 {
if i >= j {return i}
return j
}