我在燕京有把刀 2022-06-06 16:24 采纳率: 50%
浏览 16
已结题

Scala语法简写问题

Scala简写时遇到问题

 def f9(f: (String) => Unit): Unit = {
      f("999999999")
    }

//(4)如果参数只出现一次,则参数省略且后面参数可以用_代替,没有很理解

f9(println(_))
f9(println(_+"4,xxx"))  //为什么这种不被允许
  • 写回答

1条回答 默认 最新

  • 我在燕京有把刀 2022-06-07 08:59
    关注

    scala中如果参数只出现一次,且按照顺序出现则参数省略且后面参数可以用_代替,但是有两种特殊情况不能这样使用1、化简后只剩下下划线,2、函数存在嵌套,你这种就属于存在嵌套 不能化简的情况

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 6月15日
  • 已采纳回答 6月7日
  • 创建了问题 6月6日