コレクションフレームワークのComparatorオブジェクトを使用して、特定の属性でArrayListをソートしたいとします。コレクションを使用した配列リストの並べ替え
measureEviArray
というArrayListがあります。この配列にはオブジェクトタイプMeasureEvi
が含まれています。
クラスMeasureEvi
には、PointFデータタイプに対応するmCoordenate
という属性があります。
public class MeasureEvi {
private int mIndex; //
private int mOrderIndex;
private int eIndex; //
private TextView mTag; //
private PointF mCoordenate;
}
私がしたいことはXの各オブジェクトに与えられたcoordenatesに応じて、その配列を整理することです(mCoordenate.x
)
は、それが可能にマイナーからアレイOrdenateを、このためにコレクションを使用して取得することですX軸で最大?私はこの方法を実装しようとしていた
:
Collections.sort(measureEviArray, new Comparator<MeasureEvi>() {
@Override
public int compare(MeasureEvi measureEvi, MeasureEvi t1) {
return measureEvi.getmCoordenate().x.compareTo(t1.getmCoordenate().x);
}
});
をしかし、のcompareToはオプションではありません、方法を解決することはできません。 PointF
からx
以来
は 'X' 'int'ですか?もしそうなら、 'Integer.compare(x1、x2)'を使います。 – shmosel