![]() |
1
32
sorting.quicksort声明了用于获取数字或字符串数组的函数,但我假设您的意思是要对自己类的对象列表进行排序? 我想你看到的功能是
如果我正确阅读,这意味着数组中的对象必须具有
所以从书中摘取一个例子:
因此,给定一个数组[MyClass],那么sorting.quicksort应该可以工作。 |
![]() |
2
97
|
![]() |
3
52
现在这一个也可以工作了:
|
![]() |
4
19
如果您只想对事物进行排序,但还没有与排序对象结合,那么您可以使用列表的排序方法。它将比较函数作为参数,因此您可以在任何类型上使用它:
列表可能比数组“更具规模”。 来自scala API docs :
|
![]() |
5
5
斯卡拉的“默认”数组是一个可变的数据结构,非常接近Java的数组。一般来说,这意味着“数组”不是很有规模的,即使是可变的数据结构。不过,这是有目的的。如果数组是适合您需要的数据类型,那么您就是这样对它进行排序的。顺便说一下,在对象排序上还有其他的排序方法。 我想我刚刚意识到你的问题是什么…您不需要传递任何隐式参数(毕竟它是隐式的)。该参数的存在意味着必须有某种方法将类型k转换为有序的[k]。这些定义已经存在于scala的类中,所以您不需要它们。 对于任意类,可以这样定义它:
现在,如果有人被命令从一开始,这就不是问题了:
|
![]() |
6
3
虽然接受的答案是正确的,但QuickSort方法提供了比这更大的灵活性。我为你写了这个例子。
这说明了如何使用隐式和显式转换从foo到某个扩展有序[foo]的类来获得不同的排序顺序。 |
![]() |
7
2
我更喜欢用户 排序效用 例子:
请看这个了解更多信息 Sorting util |
![]() |
davidzxc574 · 将字符串缩放为字符 2 年前 |
![]() |
yic_l · 什么是“!”在这个函数中是什么意思? 2 年前 |
![]() |
Jelly · Scala:用于理解递归未来 2 年前 |
![]() |
bbgghh · 在scala中连接两个列表时如何处理不匹配的键 3 年前 |
![]() |
Iheb Mar · 卡夫卡制作人/消费者粉碎每一秒的API调用 3 年前 |
![]() |
B. Bal · 在Scala中重用类成员 3 年前 |