6

在 AS3 中,Array.sort()采用了一些不错的排序选项,例如:

  • Array.DESCENDING - 将数组从大到小排序
  • Array.RETURNINDEXEDARRAY - 返回一个索引数组,以便您可以跟踪哪个项目在哪里排序

但遗憾Vector<T>.sort()的是不支持这些功能,并且只需要一个compareFunction:Function参数,以便您可以编写自己的排序逻辑。

有没有其他方法可以快速获取向量的排序索引数组?

4

2 回答 2

8

查看文档:http ://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/Vector.html#sort ()

仍然可以使用这些选项,但您必须将它们作为第一个参数而不是比较函数传递。

 myVector.sort(Array.DESCENDING|Array.RETURNINDEXEDARRAY);
于 2012-06-20T17:44:18.390 回答
5

RETURNINDEXEDARRAY在 Flash Player 10+ 中不起作用。它只是返回相同的原始Vector<Number>.

与数组不同,RETURNINDEXEDARRAY该方法忽略了选项Vector.sort()。返回的 Vector 对象始终是原始对象的引用。

于 2012-07-01T09:43:30.587 回答