Seb*_*ger 13 android kotlin kotlin-extension
我刚注意到这个lint错误:
调用需要API级别24(当前最小值为19)java.util.map#foreach
当我在Kotlin的MutableMap上使用扩展函数forEach时.当我写这条线时没有发生这种情况,但现在就在那里.我在其他机器上没有看到这个错误.
Nae*_*mul 39
你使用的不是kotlin.collections.MutableMap.forEach.
你正在使用的似乎是Map.forEach在Java 8中.
阅读这篇文章:http: //blog.danlew.net/2017/03/16/kotlin-puzzler-whose-line-is-it-anyways/
这似乎是一个常见的错误.
从Android API级别24开始,Java 8得到了很好的支持.
总之,不要使用喜欢map.forEach { t, u -> Log.i("tag", t + u) }.
用得像map.forEach { (t, u) -> Log.i("tag", t + u) }.
(不是两个参数.只有一个参数是一对.)
这也会发生在列表中,即使我正在使用我需要使用:
list.iterator().forEach {}
Run Code Online (Sandbox Code Playgroud)
关键是iterator()在 forEach 之前使用。
| 归档时间: |
|
| 查看次数: |
2775 次 |
| 最近记录: |