別の配列に基づいていくつかを並べ替える必要がありますが、arraylist
その方法がよくわかりません。リストの距離があり、コレクションを使用して並べ替えます。それは完全に機能しますが、ソートされたリストに基づいて他のリストをソートしたいと思います。これは私がこれまでに行ったことです
private void sortList() {
List<Float> tempDistance = new ArrayList<Float>();
List<Float> tempmyLat = new ArrayList<Float>();
List<Float> tempmyAlt = new ArrayList<Float>();
List<Float> tempmyLng = new ArrayList<Float>();
ArrayList<HashMap<String, String>> tempplacesListItems = new ArrayList<HashMap<String, String>>();
tempDistance = Distance;
tempmyLat = myLat;
tempmyLng = myLng;
tempmyAlt = myAlt;
tempplacesListItems = placesListItems;
Collections.sort(tempDistance);
for (int i = 0; i < Distance.size(); i++) {
Log.d("sorted distance", "" + tempDistance.get(i));
for (int k = 0; k < tempDistance.size(); k++) {
if (Distance.get(i) == tempDistance.get(k)) {
tempplacesListItems.set(k, placesListItems.get(i));
tempmyLat.set(k, myLat.get(i));
tempmyLng.set(k, myLng.get(i));
tempmyAlt.set(k, myAlt.get(i));
}
}
}
myLat = tempmyLat;
myLng = tempmyLng;
myAlt = tempmyAlt;
placesListItems = tempplacesListItems;
}