草庐IT

Kotlin-script

全部标签

java - 为什么我们写 NextActivity::class.java 虽然这是一个 kotlin 类?

我们必须用扩展名.java编写这一行,虽然它的扩展名是.kt我认为Kotlin文件转换为java文件,但java也转换为字节码,所以我们也可以使用.class文件如果Kotlin代码转换进入java代码。NextActivity::class.javatoNextActivity::class.kt//不起作用btn?.setOnClickListener{startActivity(Intent(this,NextActivity::class.java))}所以问题是为什么我们在NextActivity::class.java中编写.java问题来自here.

gradle - Kotlin 和 Gradle - 从 stdio 读取

我正在尝试使用以下命令执行我的Kotlin类:./gradlew-qrun这是我的HelloWorld.kt类:packagesamplesfunmain(args:Array){println("Hello,world!")vallineRead=readLine()println(lineRead)}这是我的build.gradle.kts:plugins{kotlin("jvm")application}application{mainClassName="samples.HelloWorldKt"}dependencies{compile(kotlin("stdlib"))}r

android - android 中的 setOnLongClickListener 与 kotlin

如何在ListView的每个项目中使用setOnItemClickListner?我的xml:这是我的适配器类innerclassmo3d1Adapter:BaseAdapter{overridefungetItemId(p0:Int):Long{returnp0.toLong()}overridefungetCount():Int{returnlistOfmo3d.size}varlistOfMkabala=ArrayList()varcontext:Context?=nullconstructor(context:Context,listOfMkabaln:ArrayList):s

接口(interface)错误中的 Kotlin 默认参数?

kotlin文件interfaceTest{funtest(message:String,delay:Int=100)}classA:Test{overridefuntest(message:String,delay:Int){}}我发现我不能在接口(interface)和类中使用@JvmOverloads。如果我在接口(interface)中添加@JvmOverloads,错误是@JvmOverloads注解不能用于接口(interface)方法,如果我添加@JvmOverloads在类中,错误是平台声明冲突....但是,我似乎可以在kotlin文件中使用默认参数,就像这样。vara

kotlin - 'this' 未在此上下文中定义

我该如何解决以下情况?interfaceIclassA(i:I)classC:I,A(this)//简而言之,我想将类实例传递给父类(superclass)构造函数。在Kotlin中可以吗?附言所有的答案都是好的并且在技术上是正确的。但是让我们举一个具体的例子:interfacePilot{funinformAboutObstacle()}abstractclassCar(privatevalpilot:Pilot){fundrive(){while(true){//....if(haveObstacleDetected()){pilot.informAboutObstacle()}/

android - 将一个 mutableList 从 Activity A 传递到 Kotlin 中的 Activity B。

我正在尝试通过Kotlin中的Intent将数据从ActivityA传递到ActivityB。问题是我有一个videos:MutableList和intent.putParcelableArrayListExtra("VIDEOS",videos)只接受ArrayList作为论据。问题*。如何将mutableList数据从ActivityA发送到ActivityB?*。或者我是否必须将其转换为ArrayList?PS:Video实现Parcelable 最佳答案 将其转换为ArrayList(或首先将其存储为一个?)如果您想坚持通过

dictionary - 有没有更惯用的方式在 Kotlin 中初始化这个 map ?

我正在编写一个小游戏,其中一部分是跟踪玩家的得分。为此,我有一个初始化如下的map://given:players:Listvarscores:MutableMap=mutableMapOf(*players.map{itto0}.toTypedArray())困扰我的是,我需要在map{itto0}的结果上使用.toTypedArray()可以应用扩展运算符*。有没有办法避免这种情况?通过压缩两个数组创建map时也会出现同样的问题://doesnotcompile:mapOf(*a1.zip(a2))//worksbutmoreverbose:mapOf(*a1.zip(a2).to

android - 具有合成绑定(bind)和可空性的 Kotlin View

我注意到当使用Kotlin的合成绑定(bind)时,返回的View是非空的(Kotlin将返回View!)。但这对我来说没有多大意义,因为findCachedViewById实际上可以返回null结果,这意味着View实际上可以为null。publicView_$_findCachedViewById(intvar1){if(this._$_findViewCache==null){this._$_findViewCache=newHashMap();}Viewvar2=(View)this._$_findViewCache.get(Integer.valueOf(var1));if(

Android kotlin mockMaker 问题

您好,我正在尝试模拟最终类(因为kotlin中的所有类默认都是最终类)并在我的gradle中添加了以下依赖项:testImplementation'junit:junit:4.12'testImplementation'au.com.dius:pact-jvm-consumer-junit_2.11:3.5.10'testImplementation"org.mockito:mockito-android:2.13.0"testImplementation'org.mockito:mockito-inline:2.13.0'testImplementation"org.mockito:

kotlin - 在 Kotlin 中,术语 Coroutine 和 Continuation 有什么区别?

这两个术语似乎可以互换使用。然而,似乎也有一些差异,我正在努力解决。有区别吗? 最佳答案 确实,这两者关系密切。要恢复协程,您实际上调用continuation.resume()。每个协程都有其关联的延续对象。实际上,除了那个对象,你不需要其他任何东西,它包含协程的完整状态。在一定程度上,Kotlin使用“协程”还包括协程调度器,它让协程知道如何准确地挂起自己,挂起时在哪里保持延续,以及以后如何恢复(调度)它。但是你也可以使用Unconfined调度器,它几乎和没有调度器一样好,并且完全控制恢复,只保留延续对象:importkotl