Java:矢量排序与集合排序

时间:2015-05-28 13:11:35

标签: java sorting vector collections

我从未有幸使用下面的代码,而且我现在偶然发现了一项任务,我想假设其中哪些是最常用的,以及为什么。

我们有两个例子,

public Vector<Integer> sort(Vector<Integer> integers) { ... }

public Collection<Integer> sort(Collection<Integer> integers) {}

基本上,我们要争论这两个例子中的哪一个是排序事物的最佳解决方案。这两个中哪一个使用最多,为什么?

2 个答案:

答案 0 :(得分:0)

  

基本上,我们要论证这两个例子中的哪一个是排序事物的最佳解决方案。这两个中哪一个使用最多,为什么?

很多评论,但我没有看到答案。所以:第二个现在更常用。第一个是早期Java时代的旧方法。你仍然可以使用它,但是现在人们主要使用第二个,因为它显然对使用它的人施加的要求较少(特别是你正在排序的集合不需要是Vector)。

答案 1 :(得分:0)

每种都有优点和缺点。我认为你被要求在两个糟糕的选择之间选择(或许是故意的)。

许多人已经说过,Vector已经过时了。不应该使用它。

然而...... Collections.sort方法采用List而非Collection是有原因的:如何对无序Set进行排序?如何对已经具有所需顺序的集合进行排序,例如TreeSet?

由于排序Collection的概念定义很差,因此使用Vector的方法可能是更好的方法,即使不应该使用Vector本身。