使用表达 “_ =>” 下面的代码是不工作:不能在斯卡拉
val neighbors = ('a', List(1,2,3)) #:: ('b', List(2,3,4)) #:: ('c', List(3,4,5)) #:: Stream.empty
neighbors.count(_ => _._1 == 'a'))
不过,我可以这样做:
neighbors.count(_._1 == 'a')
或:
neighbors.count(elem => elem._1 == 'a')
这两个有效的解决方案。
问题:“_ =>”有什么问题?
非常感谢你
*因为它需要产生带有两个参数的函数。*为什么?该语言本身可以说'_ =>'只是简单地将'_'绑定到一个新的变量名,类似于'_._ 1'的工作方式。 –
我认为'_._ 1'只是产生一个函数'x => x._1',同样'_ => c'产生函数'x => c'',其中c是一个独立于x的表达式。 –