什么列表类型在kotlin中是可变的,可以在java中使用?
有一个用kotlin创建的库,其中有一个函数预期会被其子类重写,该子类接受一个可变列表(预期会在此函数中修改)什么列表类型在kotlin中是可变的,可以在java中使用?,kotlin,mutablelist,Kotlin,Mutablelist,有一个用kotlin创建的库,其中有一个函数预期会被其子类重写,该子类接受一个可变列表(预期会在此函数中修改) protectedopenfunmakedataforadapter(itemsList:MutableList):List{ returnitemslist//默认行为 } lib在java应用程序中使用,因此子类将覆盖它: @Override protected List<Data> makeDataForAdapter(MutableList<Data>
protectedopenfunmakedataforadapter(itemsList:MutableList):List{
returnitemslist//默认行为
}
lib在java应用程序中使用,因此子类将覆盖它:
@Override
protected List<Data> makeDataForAdapter(MutableList<Data> itemsList) {
......
}
@覆盖
受保护列表makeDataForAdapter(可变列表项列表){
......
}
编译器抱怨“无法解析可变列表”
在java中可以使用kotlin中可变的列表类型是什么?在JVM和Android上都由java.util.list
接口表示的kotlin.list
和kotlin.MutableList
因此,只要在需要与Kotlin
List
或MutableList
交互操作的地方使用JavaList
类型即可。。。只需使用Ctrl-I(Mac上的Cmd-I),IntelliJ将允许您重写方法,并为您添加必要的代码。感谢@JB Nizet,在何处单击Cmd-I?我使用的是AndroidStudio,似乎什么都没有?对不起,它是Ctrl-O,用于Java子类中的Override方法。在AndroidStudio中不起作用,Cmd-O打开类文件。它是Ctrl-O,不是Cmd-O
@Override
protected List<Data> makeDataForAdapter(MutableList<Data> itemsList) {
......
}