scala - scala foreach 有一个增强,不能进行任何操作?
问题描述
我是 Scala 的新手,发现“foreach”有点困惑,比如:
(1 to 10).foreach(println(_)) //OK
(1 to 10).foreach(x=>println(x+1)) //OK
(1 to 10).foreach(println(_+1)) //ERROR
我会知道第三行代码中发生了什么。任何帮助表示赞赏,谢谢
解决方案
(1 to 10).foreach(println(_+1))
编译器将上述表达式视为:
(1 to 10).foreach(println(x => x + 1))
你想要这样:
(1 to 10).foreach(x=>println(x+1))
匿名函数的占位符语法用函数替换尽可能小的包含表达式。
推荐阅读
- asp.net-mvc - IIS 8.5、asp.net IHttpHandler 和 AppsendToLog
- c - sleep() 函数不起作用,打印会立即执行
- android-studio - Android 自定义 lint 规则报错但仍然构建成功
- php - 嵌套 ul li 中的 WP 孙子类别
- azure - build.artifactstagingdirectory 不存在 Azure Devops
- angular - Angular 10 FormArray ERROR 错误:找不到具有名称的控件:'[object Object],[object Object],[object Object]
- javascript - 可以选择多个可拖动吗?
- java - MVVM - 响应列表不包含任何值
- typescript - “R”可以用与“响应”无关的任意类型实例化
' - java - 我无法在 Visual Studio Code 上运行 Java!我尝试了很多