2016-10-26 4 views
-2

私は次のBeanのリストを持っています。私はオブジェクトのバージョン番号に基づいてこのリストをソートする必要があります。私はComparatorインターフェースが初めてで、ここで何か助けが必要です。Javaの整数変数に基づいてオブジェクトリストをソートする方法

私のPOJOはこのようになります -

class File{ 
private int version; 
private String fileName; 
public getVersion(); 
public setVersion(); 
public setFileName(); 
public getFileName(); 
} 

私はリストを取得していますクラス -

class Example{ 
public static void main(){ 
List<Files> files = new ArrayList<Files>(); 
files = getInfoFromDB(); 

// How to sort the files based on version variable here. I am new to use Comparator. 
Collections.sort(files); 

} 
} 
+0

コンパレータとComparableインターフェイスの使用例(ここではhttp: /stackoverflow.com/documentation/java/3137/comparable-and-comparator/10693/sorting-a-list-using-comparablet-or-a-comparatort#t=201610260757530784707)。 – JonK

答えて

0

あなたはComparatorは、バージョン番号でソートするために取得するためにComparator.comparingを使用することができます。

files.sort(Comparator.comparing(File::getVersion)); 
+0

このソリューションでは、ローカル変数getVersionを作成するように求められます。 – devutkarsh

+0

ローカル変数 'getVersion'が作成されていません。 'File :: getVersion'はメソッド参照です。 'comparison'メソッドは比較を行うために' File'オブジェクトの 'getVersion'メソッドを使う' Comparator'を返します。 –

+0

Comparatorインターフェイスを実装した後、どのメソッドをPOJOクラスで正確にオーバーライドするかをコードで説明できますか? – devutkarsh

関連する問題