Kotlin 还支持类型投影,这允许在不知道具体类型的情况下安全地使用泛型类型。在编译后的字节码中,泛型类型参数的具体类型信息会被擦除,这意味着在运行时无法得知泛型参数的实际类型。Kotlin 支持泛型,这意味着您可以编写可以与多种数据类型一起工作的代码,而不必为每种数据类型编写单独的代码。对泛型类型参数施加约束,以限制它们可以接受的类型。在 Kotlin 中,`T` 通常用作类型参数的占位符,它在实例化或传递参数时会被替换成具体的类型。// 泛型函数,T 必须是 Comparable 的子类型。