У меня есть карта, содержащая строки и объекты, и я хотел бы отсортировать их по атрибуту объекта.
public class Foo{
public long timestamp,
public String name;
public Foo(long timestamp,String name){
this.timestamp = timestamp;
this.name = name;
}
}
public static main(){
Map<String,Foo> map = new HashMap<String,Foo>(0);
for(int i; i<1000;i++){
//getting the key and filling the Foo objects
Foo foo = new Foo(datetime,name);
String key = i;
map.put(key,Foo);
}
//sorting
Map<String,Foo> sortedMap = sortData(map);
}
public Map<String,Foo> sortData(Map<String map,Foo> map){
//SORTING HERE THE MAP BASED ON THE TIMESTAMP
}
Сортировка основана на атрибуте отметки времени объекта Foo. Как мне это сделать?
см. stackoverflow.com/questions/109383/…
HashMap - это не sortedMap. Сначала вам нужно сменить карту на TreeMap. Затем попробуйте использовать настраиваемый компаратор для сортировки карты.