【发布时间】:2019-12-16 00:02:46
【问题描述】:
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
Test().list.contains(1)
}
}
public class Test {
ArrayList<Integer> list;
public ArrayList<Integer> getList() {
return list;
}
}
在Test().list.contains(1) 处编译失败并显示消息:
任务:app:compileDebugKotlin FAILED e: /Users/sreejithcr/Documents/MyApplication/app/src/main/java/com/wxample/myapplication/MainActivity.kt: (13, 31): 重载解析歧义: public open fun contains(@Nullable element: Int!): java.util.ArrayList 中定义的布尔值 public open fun contains(@Nullable element: Int!): Boolean defined in java.util.ArrayList
我的理解是编译器发现 2 个 contains() 具有完全相同的签名,但不确定要调用哪个。
gradle 配置:
ext.kotlin_version = '1.3.41'
类路径'com.android.tools.build:gradle:3.4.2'
【问题讨论】:
-
我遇到了同样的错误,但是 Kotlin + Java + Intellij IDEA
-
仅供参考:我的问题是我的依赖列表中的 Kotlin 版本与另一个导入库的依赖冲突。
标签: java android android-studio kotlin