kotlin - 有没有办法在Kotlin中关闭使用网站的协方差?

标签 kotlin

注意:从Kotlin beta 4开始,此问题已修复。

fun test(a: List<String>) { }

上面的Kotlin代码生成字节代码:
public static final void test(@NotNull List<? extends String> a)
{
    Intrinsics.checkParameterIsNotNull(a, "a");
}

我已经提交了issue,但是我需要暂时避开该错误。有没有办法将a标记为不变式?

最佳答案

该问题已在开发分支中解决,并将在下一个公开发行版中提供。
也将有JvmSuppressWildcards / JvmWildcard批注允许控制通用签名。

作为临时的解决方法,您可以在Kotlin声明中使用MutableList<String>

关于kotlin - 有没有办法在Kotlin中关闭使用网站的协方差?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34327982/

相关文章:

http - 如何在 Kotlin 中将 win1251 编码转换为 UTF8?

android - Arcore fragment 在启动时崩溃

android - 模块是使用不兼容的 Kotlin 版本编译的。其元数据的二进制版本是 1.5.1,预期版本是 1.1.15

Android Studio 3.1.4 问题

java - 获取双SIM卡电话记录(通话记录来自Sim卡)

java - SonarQube 和 Jacoco 无法识别 kotlin-classes 目录

android - Parcelize 在对象和枚举上提示 "Parcelable should be a class"

android - 在 RecyclerView 中处理 EditText 的导航

android - 是否有必要从 Firebase 实时数据库中删除每个添加的监听器?

spring-boot - WebFlux 和 Kotlin 在多模块应用程序中使用 ReactiveCrudRepository