2017-08-07 6 views
0

enter image description hereこんにちは私はList Javaオブジェクトを持ち、1つのフィールドはDouble distanceで、このフィールドでリストをソートしたいと思います。そして、それは正しく機能しません。Java android sort double by javaオブジェクトを一覧表示

私はこれを行う:あなたはあなたのリストには、リストに追加したときに正しい位置に各項目を挿入することにより、非常に単純な方法でソートすることができ

Collections.sort(rows, new Comparator<AdapterRooteEntity>() { 
    @Override 
    public int compare(AdapterRooteEntity o1, AdapterRooteEntity o2) { 
     // return o1.getAddress().compareTo(o2.getAddress()); 
     // return Double.compare(Tools.distance(o1.getLat(), 
     // gps.getLatitude(), o1.getLon(), gps.getLongitude()), 
     // Tools.distance(o2.getLat(), gps.getLatitude(), o2.getLon(), 
     // gps.getLongitude())); 
     return Double.compare(o1.getDistance(), o2.getDistance()); 
    } 
}); 
+4

正しく動作しないと言うと、問題は何ですか? –

+1

そのコードの問題は何ですか? –

+0

@kapsym距離でソートした後に画面を表示します。私はなぜこのようないくつかのオブジェクトを正しく分類できないのか分かりません –

答えて

1

を。

public void sortedInsert(Item item){ 
    for (int i = 0; i< yourList.size(); i++) { 
     if (item.getDistance() < yourList.get(i).getDistance()){ 
      yourList.add(i, item); 
      return; 
     } 
    } 
    // If the item hasn't been inserted 
    yourList.add(item); 
} 
-1

確認o1.getDistance()リターンDouble、そうでない場合は、o1o2ためDouble.parse(o1.getDistance())を使用してください。

関連する問題