【发布时间】:2011-10-26 22:45:59
【问题描述】:
所以在another question 的评论中,我刚刚看到了这个计算字符串中 L 数量的示例:
"hello".count('l'==)
够疯狂的......它的工作原理。
从完全扩展的版本开始,我们有:
"hello".count(ch => ch == 'l')
然后可以简化为:
"hello".count(_ == 'l')
但是我们可以这样做:
"hello".count('l'==)
我会想... ??? ...
可能 Scala 是在推断我们一定是想在比较的末尾添加一个 _。 IMO,这就是事情开始变得非常奇怪的地方;这对我来说似乎太过分了。谁能解释允许这种语法背后的想法,或者进一步阐明这一点?
如果您认为这很酷,那么我们如何证明不假设人们也可能需要 == 运算符,从而可以省略它?那么我们可以:
"hello".count('l')
我想我正在回想起在 perl 中有 10^99999 种可能的做事方式的噩梦......
【问题讨论】:
-
在 Perl 中有 9 种方法可以完成任何给定任务,但其中 8 种很糟糕。
标签: scala syntax programming-languages