Сортировка карты <String, MyObj> по атрибуту Object.attribute [Java]

У меня есть карта, содержащая строки и объекты, и я хотел бы отсортировать их по атрибуту объекта.

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. Как мне это сделать?

HashMap - это не sortedMap. Сначала вам нужно сменить карту на TreeMap. Затем попробуйте использовать настраиваемый компаратор для сортировки карты.

lohnns 01.05.2018 19:53

см. stackoverflow.com/questions/109383/…

lohnns 01.05.2018 19:57
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
2
51
0

Другие вопросы по теме