当前位置: 首页 > 知识库问答 >
问题:

Kotlin扩展函数突然需要api级别24

洪成济
2023-03-14

我刚刚注意到了这个线头错误:

调用需要API级别为24(当前最小值为19)的java。util。地图#foreach

当我在Kotlin中的可变映射上使用扩展函数forEach时。我写这句话的时候并没有发生这种情况,但现在已经发生了。我在另一台机器上没有看到这个错误。

共有3个答案

邢炯
2023-03-14

因为a依赖项提供的映射是Java 8映射,所以无论我如何将参数分组到lambda签名(one,two)中,forEach都被作为Java 8版本-

裴甫
2023-03-14

这也发生在列表中,即使我正在使用我需要使用的:

list.iterator().forEach {}

关键是使用iterator(),然后才是foreach

程俊健
2023-03-14

您使用的不是kotlin。收藏。可变地图。forEach

您正在使用的似乎是Java8中的Map.foreach

参考本文:http://blog.danlew.net/2017/03/16/kotlin-puzzler-whose-line-is-it-anyways/

这似乎是一个常见的错误。

Java8受到Android API级别24的良好支持。

简而言之,不要像map那样使用forEach。forEach{t,u-

 类似资料:
  • 我在Kotlin文件中定义了扩展函数。 其中是(生成的)java类。现在,我想用正常的java代码访问它: 然而,那是行不通的。IDE将无法识别方法,编译失败。

  • 我安装laravel通过作曲家,但当运行的网站它给一个错误 我也安装了php5-mcrypt,但错误仍然存在。

  • 主要内容:扩展函数,扩展函数是静态解析的,伴生对象的扩展,扩展的作用域,扩展声明为成员Kotlin 可以对一个类的属性和方法进行扩展,且不需要继承或使用 Decorator 模式。 扩展是一种静态行为,对被扩展的类代码本身不会造成任何影响。 扩展函数 扩展函数可以在已有类中添加新的方法,不会对原类做修改,扩展函数定义形式: receiverType:表示函数的接收者,也就是函数扩展的对象 functionName:扩展函数的名称 params:扩展函数的参数,可以为NULL 以下实

  • Kotlin 可以对一个类的属性和方法进行扩展,且不需要继承或使用 Decorator 模式。 扩展是一种静态行为,对被扩展的类代码本身不会造成任何影响。 扩展函数 扩展函数可以在已有类中添加新的方法,不会对原类做修改,扩展函数定义形式: fun receiverType.functionName(params){ body } receiverType:表示函数的接收者,也就是函数扩

  • 我已经安装了家园,我试图在Laravel项目版本4.2上工作,但是我一直收到以下错误: 需要PHP扩展。 我已经在服务器上安装了Mcypt,并在PHP7INI文件中启用了它。由于某种原因,这个问题不想消失。 有什么建议,我可以做什么,以启用我的虚拟框的密码?

  • 在针对PHPCMS V9做二次开发的时候,您可以自定义一些全局函数且不影响以后官方升级 您自定义的文件请放置于该文件中 phpcms\libs\functions\extention.func.php或者以.func.php格式命名,放置于如下目录中 phpcms\libs\functions\autoload