我知道Scala中的=>
用于函数文字,意思是“将左边的东西转换为右边的东西”。但实际上所谓的符号是什么?等于,暗示,lambda?什么?
答案 0 :(得分:17)
我记得在某处读过“火箭”一词,可能是在Dean Wampler和Alex Payne的书Programming Scala中。我找到了this related answer from Bill Venners on a forum:
一段时间我问马丁奥德斯基他说的是什么,他说“右箭头”。几个月前,Ron Hitchens向我提出了“子弹”这个名字。我在这里和那里使用它,但它似乎没有坚持。大约2个星期前,我问了一些Ruby家伙他们称之为什么,他们说“哈希火箭”。 “哈希”的原因是Ruby使用它将键映射到值,即Ruby中的“key => value”就像Scala中的“key - > value”(但在Ruby中没有类型),当然 - &gt ;在Scala中是一个库抽象,而不是语言的一部分。所以我建议把它称为“火箭”。它比子弹更刺激,更暴力,我们可以在其中放置一个形容词来区分Scala中的各种用法:匿名函数中有“函数火箭”,也可能是匹配表达式或部分函数中的case子句中的“case rocket”等等。
所以Odersky使用的“官方”术语是“右箭头”。
答案 1 :(得分:10)
通常也称为“胖箭”
更新:哦,我刚刚注意到Paolo Falabella在上面的评论中提到了它。无论如何,在这里得到一个正确的答案也是如此,因为“胖箭”是一个非常普遍的名字。
答案 2 :(得分:6)
在scala文档(A Scala Tutorial for Java Programmers)中,它被称为right arrow
答案 3 :(得分:0)
在马丁·奥德斯基(Martin Odersky),Lex Spoon,比尔·文纳斯(Bill Venners)的《 Programming in Scala
书中》中,它被称为右箭头或机架
=>(向右箭头或“火箭”)
在函数文字中,68
在导入语句中,270–271
自我类型为563
在比赛替代项中,164
在这个别名中,659