Сортировка списка дат (desc) с использованием datetime или utc millis - PullRequest
0 голосов
/ 11 апреля 2019

У меня есть список объектов, которые имеют в качестве члена строку UTC iso 8601.
Я хочу отсортировать список по убыванию.
Следующие работы:

Collections.sort(myList, (o1, o2) -> { o2.getDate().compare(o1.getDate()) } );  

функция getDate() реализована следующим образом:

public DateTime getDate() {
        return new DateTime(isoUtcString);
}  

Я не уверен, что создание экземпляра DateTime каждый раз - лучший способ. Также я знаю, что мог бы также использовать millis. Например. Я мог бы иметь

long utcMillis = new DateTime(isoUtcString).getMillis();  

В качестве переменной класса и сделать

Collections.sort(myList, (o1, o2) -> {
  if(o1.getUtcEpoch() > o2.getUtcEpoch()) {
      return -1; //reverse order
  }    
  else if(o1.getUtcEpoch < o2.o1.getUtcEpoch) {  
      return 1; //reverse order
  }  
  return 0;
} );  

А getUtcEpoch() - это

long getUtcEpoch() {  
   return utcMillis;
}  

Таким образом, мой вопрос, должен ли я придерживаться классов Date для сортировки или использования UTC Millis - лучшая альтернатива?

...