ArrayListのソート
Javaでは、Listは非常に実用的でよく使われるコンテナです.特にJavaEEでは、Beanのペアオブジェクトをロードすることがよくあります.今日はリストの並べ替え問題に遭遇しましたが、わざわざ心得を書きます.
ListのソートにはJavaがあります.
ステップ1:コンパレータを定義します.Comparatorインタフェースを実装するクラスを定義し、comparareメソッドを書き換え、ソートの条件を定義します.
ここで注意すべき点はいくつかあります.1、ComparatorリードTタイプは、ソートするListのTと一致し、デフォルトはObjectタイプです.
2、compareメソッドを書き換える場合、異なる比較条件での戻り値の違いに注意し、戻り値は1,0,-1であり、これらの戻り値の違いはソートの順序に影響し、詳細は次の例を参照してください.
次の手順は簡単です.
ListのソートにはJavaがあります.
ステップ1:コンパレータを定義します.Comparator
ここで注意すべき点はいくつかあります.1、Comparator
2、compareメソッドを書き換える場合、異なる比較条件での戻り値の違いに注意し、戻り値は1,0,-1であり、これらの戻り値の違いはソートの順序に影響し、詳細は次の例を参照してください.
public class ArrayComparator implements Comparator<LocationVo>{
@Override
public int compare(LocationVo obj1, LocationVo obj2) {
if(obj1.getLength()==obj2.getLength()){
return 0;
} else if(obj1.getLength()>obj2.getLength()){
return 1;
} else {
return -1;
}
}
}
次の手順は簡単です.
ArrayList<LocationVo> list = new ArrayList<LocationVo>();
.............
Collections.sort(list,new ArrayComparator());