将 Java 通配符类型参数转换为 kotlin
Converting Java wildcard type argument to kotlin
尝试学习 Kotlin 和我在 Java 中的一个 classes 我有一个值是一个列表,其中包含扩展某个接口的任何 class,如下所示.
List<? extends foo>
我之前尝试过 out
修饰符示例:
interface foo
{
val bar: out List
}
并通过修饰符示例传递 class:
interface foo<T>
{
val bar: List<T>
}
想要的结果是,如果两个 classes 扩展了这个接口,它们都可以有这个值,但是一个可以有一个列表类型 A 和一个列表类型 B
相当于 Java List<? extends foo>
的 Kotlin 不依赖于 foo
的外观,也不需要更改它。是 MutableList<out foo>
(https://kotlinlang.org/docs/reference/generics.html#use-site-variance-type-projections)。
尝试学习 Kotlin 和我在 Java 中的一个 classes 我有一个值是一个列表,其中包含扩展某个接口的任何 class,如下所示.
List<? extends foo>
我之前尝试过 out
修饰符示例:
interface foo
{
val bar: out List
}
并通过修饰符示例传递 class:
interface foo<T>
{
val bar: List<T>
}
想要的结果是,如果两个 classes 扩展了这个接口,它们都可以有这个值,但是一个可以有一个列表类型 A 和一个列表类型 B
相当于 Java List<? extends foo>
的 Kotlin 不依赖于 foo
的外观,也不需要更改它。是 MutableList<out foo>
(https://kotlinlang.org/docs/reference/generics.html#use-site-variance-type-projections)。