提问人:18446744073709551615 提问时间:10/13/2022 最后编辑:Dmytro Mitin18446744073709551615 更新时间:10/13/2022 访问量:72
scala:Ordering.by 与 Ordering.on
scala: Ordering.by vs Ordering.on
问:
和 在 Scala 中有什么区别?Ordering.by()
Ordering.on()
(嗯,一个在 trait 中定义,另一个在伴随对象中定义,实现代码也不同,但语言需要两者肯定是有原因的。
答:
3赞
Gaël J
10/13/2022
#1
从 Ordering.by
的文档中:
此函数类似于隐式传递参数的位置。
Ordering.on
Ordering[S]
基本上两者是一样的,这只是一个方便的问题,这取决于你的上下文和你正在使用的内容。
评论
0赞
18446744073709551615
10/13/2022
你能举例说明吗?在什么情况下,什么更方便?
1赞
Luis Miguel Mejía Suárez
10/13/2022
@18446744073709551615如果您想凭空创建一个新的排序,那么类似的东西非常方便,而不是掺杂 - 但是,在其他一些上下文中,调用现有实例可能更方便。Ordering.by((foo: Foo) => ...)
Ordering[Bar].on(foo => ...)
on
上一个:Rascal MPL 重载库函数
下一个:命名空间和 C++ 库
评论
Ordering