我应该如何用我自己的类型形成一个列表 属性 类型

How should I form a list property type with my own type

我试图在最终的 kotlin 代码下面形成

val participants: List<AbstractParty>

我尝试在 kotlinpoet 中使用以下代码,但它显示错误,我认为它不正确,但不知道该如何修复。任何人都可以帮忙吗?谢谢

PropertySpec.builder("participants", List<ClassName("AbstractParty">)

根据您是否有对 class 的引用,或者您是否需要从字符串创建它的名称,您可以这样做:

PropertySpec.builder("participants",
     ParameterizedTypeName.get(List::class, AbstractParty::class)
).build()

或者这样:

PropertySpec.builder("participants",
    ParameterizedTypeName.get(
            List::class.asClassName(),
            ClassName("some.pckg.name", "AbstractParty"))
).build()

找出这些东西的提示:KotlinPoet 有相当广泛的测试,你可以在那里找到几乎任何东西的例子。