草庐IT

Kotlin-script

全部标签

kotlin - 将 Kotlin 的 KClass 转换为 Java 中的常规 Class

我正在尝试在Java代码中调用常规Java方法,如下所示:publicTproxy(KClasskClass){//unfortunatelynothinglikegetJavaClass()existsreturn(T)proxy(kClass.getJavaClass());}publicTproxy(ClassjClass){return(T)context.getBean(jClass);}在Kotlin中,您可以在每个KClass上调用.java。这不是这里的情况,我无法从KClass中提取JavaClass对象。有办法吗?编辑:这在Kotlin中是微不足道的,但我正在寻找J

kotlin - 将 Kotlin 的 KClass 转换为 Java 中的常规 Class

我正在尝试在Java代码中调用常规Java方法,如下所示:publicTproxy(KClasskClass){//unfortunatelynothinglikegetJavaClass()existsreturn(T)proxy(kClass.getJavaClass());}publicTproxy(ClassjClass){return(T)context.getBean(jClass);}在Kotlin中,您可以在每个KClass上调用.java。这不是这里的情况,我无法从KClass中提取JavaClass对象。有办法吗?编辑:这在Kotlin中是微不足道的,但我正在寻找J

class - Class< 的语法是什么?在 kotlin 中扩展 class_name>?

我正在尝试创建一个接受从Word_Class继承的任何类变量但它不起作用的Arraylist:varlst=ArrayList>();lst.add(Class);我正在寻找Class 最佳答案 您可以使用outtypeprojection在Kotlin。它相当于?扩展Java中的T,例如://v---outtypeprojectionvarlst=ArrayList>()要获得一个Java类你应该使用KClass#java,例如://v---getaKClassinstancelst.add(Noun_Class::class.j

class - Class< 的语法是什么?在 kotlin 中扩展 class_name>?

我正在尝试创建一个接受从Word_Class继承的任何类变量但它不起作用的Arraylist:varlst=ArrayList>();lst.add(Class);我正在寻找Class 最佳答案 您可以使用outtypeprojection在Kotlin。它相当于?扩展Java中的T,例如://v---outtypeprojectionvarlst=ArrayList>()要获得一个Java类你应该使用KClass#java,例如://v---getaKClassinstancelst.add(Noun_Class::class.j

android - 为什么 Kotlin 插件为 Android 项目添加 kotlin-stdlib-jre7(不是 kotlin-stdlib)引用

AndroidStudio2.3.3;Kotlin插件:1.1.4;Kotlin编译器:Kotlin到JVM:1.6。AndroidStudio>新建项目>在项目操作中配置Kotlin添加kotlin-stdlib-jre7到gradle文件的引用。我希望kotlin-stdlib因为我们的Kotlin目标JVM是1.6。还没有找到好的解释。例如。thisanswer声明Thekotlin-stdlib-jre7artifactisnotsupposedtoworkonAndroid,whichcurrentlysupportsonlyJava6platform.Whentargeti

android - 为什么 Kotlin 插件为 Android 项目添加 kotlin-stdlib-jre7(不是 kotlin-stdlib)引用

AndroidStudio2.3.3;Kotlin插件:1.1.4;Kotlin编译器:Kotlin到JVM:1.6。AndroidStudio>新建项目>在项目操作中配置Kotlin添加kotlin-stdlib-jre7到gradle文件的引用。我希望kotlin-stdlib因为我们的Kotlin目标JVM是1.6。还没有找到好的解释。例如。thisanswer声明Thekotlin-stdlib-jre7artifactisnotsupposedtoworkonAndroid,whichcurrentlysupportsonlyJava6platform.Whentargeti

java - 在 Kotlin 中实例化一个使用递归泛型的具体 Java 类

我可以在Kotlin中实例化一个使用递归泛型的具体Java类吗?如果可以,那么如何?详情我正在尝试实例化一个使用递归泛型的Java类,类似于下面的示例。我找到了一种将Java类包装在一个新类中的解决方法,但这感觉就像我在回避一个我应该能够直接处理的问题。具有递归泛型的Java类publicclassMyLegacyClass>{//implementation...}它是如何在Java中实例化的//InJavawejustignorethegenerictype...MyLegacyClassmyLegacyClass=newMyLegacyClass();在Kotlin中实例化的尝试

java - 在 Kotlin 中实例化一个使用递归泛型的具体 Java 类

我可以在Kotlin中实例化一个使用递归泛型的具体Java类吗?如果可以,那么如何?详情我正在尝试实例化一个使用递归泛型的Java类,类似于下面的示例。我找到了一种将Java类包装在一个新类中的解决方法,但这感觉就像我在回避一个我应该能够直接处理的问题。具有递归泛型的Java类publicclassMyLegacyClass>{//implementation...}它是如何在Java中实例化的//InJavawejustignorethegenerictype...MyLegacyClassmyLegacyClass=newMyLegacyClass();在Kotlin中实例化的尝试

kotlin - 为什么 Kotlin Pair 中的条目不可变?

我有一个MutableListofPairs,我想减少第一个条目的值,所以我的条件是通过(更改):while(n>0){if(sibice[i].first>0){sum+=sibice[i].second//sibice[i].first--willnotcompilen--}elsei++}但是Pair类不允许我这样做,除了创建我自己的对之外还有其他解决方法吗?为什么会出现这种情况? 最佳答案 与所有实体一样,可变性也会出现问题。在您的情况下,您可以使用一对新值更新列表条目。valnewPair=oldPair.copy(fir

kotlin - 为什么 Kotlin Pair 中的条目不可变?

我有一个MutableListofPairs,我想减少第一个条目的值,所以我的条件是通过(更改):while(n>0){if(sibice[i].first>0){sum+=sibice[i].second//sibice[i].first--willnotcompilen--}elsei++}但是Pair类不允许我这样做,除了创建我自己的对之外还有其他解决方法吗?为什么会出现这种情况? 最佳答案 与所有实体一样,可变性也会出现问题。在您的情况下,您可以使用一对新值更新列表条目。valnewPair=oldPair.copy(fir