如果我有一个 Int 列表,例如: val myList = List(3,2,1,9)
从 Int 的 List 或 Seq 创建 SortedSet 的正确/首选方法是什么,其中项目从最小到最大排序?
如果你拿枪指着我的头,我会说: val itsSorted = collection.SortedSet(myList)
但是我收到一个错误,提示没有为 List[Int] 定义隐式排序。
请您参考如下方法:
用:
collection.SortedSet(myList: _*)
你使用它的方式,编译器认为你想创建一个
SortedSet[List[Int]]
不是
SortedSet[Int]
.这就是为什么它提示
List[Int]
没有隐式排序.
注意
A*
类型的重复参数在方法的签名中:
def apply [A] (elems: A*)(implicit ord: Ordering[A]): SortedSet[A]
治疗
myList
作为
A
的序列参数使用,
_*
类型注释。