类似的问题:使用foreach时将match语句转换为partial函数.现在同样,IntelliJ要求我改进我的代码.不同的是,我使用匹配的值:
val matchMe = "Foo"
keys.foreach(key =>
key match {
case `matchMe` => somethingSpecial()
case _ => somethingNormal(key, calcWith(key))
})
Run Code Online (Sandbox Code Playgroud)
将此重构为匿名模式匹配函数将类似于:
keys.foreach {
case `matchMe` => somethingSpecial(_)
case _ => somethingNormal(_, calcWith(_)) //this doesn't work
}
Run Code Online (Sandbox Code Playgroud)
请注意,在第二种情况下,我不能使用,_因为我需要它两次.有没有办法在这里使用匿名模式匹配功能?