Generics 使用模板化类定义列表时出错

Generics 使用模板化类定义列表时出错,generics,kotlin,Generics,Kotlin,我有以下资料: data class GenericItem<T> (val id: Int, val data: T) 数据类泛型项(val-id:Int,val-data:T) 我试图定义一个通用列表,如下所示: val rows: List<GenericItem<T>> val行:列表 但我有一个错误: 类GenericItem需要一个类型参数 我在这里做错了什么?如何修复它?当您在 List<GenericItem<T&g

我有以下资料:

data class GenericItem<T> (val id: Int, val data: T)  
数据类泛型项(val-id:Int,val-data:T)
我试图定义一个通用列表,如下所示:

val rows: List<GenericItem<T>>  
val行:列表
但我有一个错误:

类GenericItem需要一个类型参数


我在这里做错了什么?如何修复它?

当您在

List<GenericItem<T>>
或者任何你喜欢的类型

如果您想限制允许您在generic
T
上定义的类型,您可以更改您的定义以这样定义它

GenericItem<T: YourCustomType>
通用项

并使其仅能传入一个泛型,即,或者其父项是YourCustomType

T来自何处?为了让代码正常工作,它必须在一些通用的东西里面,比如一个函数或一个类。请把这封信寄出去code@gpunto:
T
是我定义的。它不是一个具体的类,但必须在外部范围中的其他地方定义它,才能编译该行。就像一个类或一个函数用T作为泛型参数一样。我发现如果我使用
编译是有效的。正确吗?您也可以使用
是的,但这实际上取决于您希望功能是什么,当您传入
*
时,您说您希望能够将任何类型传入该列表,但您只能传入该类型。如果您使用了类似于
Any
的内容,则可以传入多种类型
GenericItem<T: YourCustomType>