给定两个Ordered val,我可以使用以下代码找到最大值:
abstract class C extends Ordered[C] ()
val v1: C = ???
val v2: C = ???
val max = implicitly[Ordering[C]].max(v1, v2)
可以更简单吗?
答案 0 :(得分:2)
如果您Math.floor(Math.random()*6+1);
,则会得到Math.random()
(或import Ordering._
,如您所愿。还v1 max v2
等
答案 1 :(得分:1)
不确定它是否更简单(当你有超过2个想要找到最大元素的元素时它实际上可能更合适)但你可以这样做:
val max = List(v1, v2).max
因为集合上的max方法采用隐式Ordering
答案 2 :(得分:0)
Write clearly -- don't be too clever. Say what you mean, simply and directly.
val max = if (v1 > v2) v1 else v2