aio*_*obe 4 scala scala-collections
我想比较Scala中两组的基数.由于Scala中的某些东西有时"正常工作",我尝试<在两组之间使用.它似乎经历了,但我无法理解结果.
例:
scala> Set(1,2,3) < Set(1,4)
res20: Boolean = true
Run Code Online (Sandbox Code Playgroud)
scala.collection.immutable.Set?更新:即使集合中元素的顺序(??)似乎也很重要:
scala> Set(2,3,1) < Set(1,3)
res24: Boolean = false
scala> Set(1,2,3) < Set(1,3)
res25: Boolean = true
Run Code Online (Sandbox Code Playgroud)
这不适用于2.8.在Scala 2.7上,会发生什么:
scala.Predef.iterable2ordered(Set(1, 2, 3): Iterable[Int]) < (Set(1, 3, 2): Iterable[Int])
Run Code Online (Sandbox Code Playgroud)
换句话说,定义了一个隐式转换scala.Predef,它被"导入"所有Scala代码,从一个Iterable[A]到一个Ordered[Iterable[A]],只要有一个隐含的A => Ordered[A]可用.
鉴于集合的可迭代顺序未定义,您无法真正预测它.例如,如果添加元素以使设置大小大于4,则会得到完全不同的结果.
| 归档时间: |
|
| 查看次数: |
495 次 |
| 最近记录: |