Come faccio a sapere se uno Joda-tempo oggetto DateTime è entro 4 ore di un altro?

StackOverflow https://stackoverflow.com/questions/1489557

  •  18-09-2019
  •  | 
  •  

Domanda

Qual è il modo migliore per dire se il tempo uno Joda oggetto DateTime è entro 4 ore di un altro se non so quale oggetto è precedente rispetto agli altri?

L'oggetto Durata Joda tempo sembra fare bene questo lavoro se so che l'oggetto A viene prima l'oggetto B, ma dal momento Durata viene firmato non sembra di fare ciò che voglio, se non conosco l'ordine.

Sembra che ci sarebbe un modo semplice per fare questo, ma non ho ancora trovato.

È stato utile?

Soluzione

Basta usare il ore classe per questo:

Hours h = Hours.hoursBetween(date1, date2); 
int hours = h.getHours();

Altri suggerimenti

È possibile utilizzare il metodo compareTo () sui due oggetti DateTime dire quale è precedente e quindi utilizzare durata per vedere se sono entro 4 ore.

Provare quanto segue:

if (Math.abs(new Duration(start, end).getStandardSeconds()) < 4 * 3600) {
  // blah blah blah
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top