2017-07-13 6 views
-3

私はこのベクターを作成しました。ベクトルクラスのソートが機能しない

Vector<Integer> list = new Vector<>(); 
    list.add(10); 
    list.add(20); 
    list.add(30); 
    list.add(40); 
    list.add(50); 

私は次のようにそれをソートしてみてください。

list.sort(); 

しかし、sortメソッドの内部ブラケット、私はこのエラーを取得する:

私は内部のブラケットを配置する必要がありますどのようなパラメータ

sort(Comparator) in Vector cannot be applied to();

sortメソッドを使用してソート作業を行います。

+2

コンパイラエラーが示唆しているように、「コンパレータ」を用意する必要があります。 – QBrute

+0

空の 'List :: sort'メソッドはありません。あなたは常に 'Comparator'を提供する必要があります。 [documentation](http://docs.oracle.com/javase/8/docs/api/java/util/List.html#sort-java.util.Comparator-) – Flown

+1

を参照してください。それ以外の場合は、 'Collections.sort(list) ; ' – soorapadman

答えて

1

Vectorクラス用のJava API仕様によると、それはCollections.sortメソッドを使用するために必要とされる、Listインタフェースを実装しています:

Collections.sort(list); 

それがデフォルト

で昇順にベクトル要素をソートします降順で並べ替える場合は、コンパレータを使用することができます。

+0

Collections.sortは、Collection要素がComparableを拡張する場合にのみ機能します。質問のコードは生のベクトルを使用し、整数を追加するように見えるので、彼は運が良ければ動くかもしれません。 –

関連する問題