DateTime all'interno di intervallo in JodaTime?
Domanda
Esiste un metodo API in JodaTime per vedere se un DateTime è dentro [inizio, fine], vale a dire il confine è incluso?
L'unica cosa che ho trovato era nuovo intervallo (inizio, fine) .contains (dateTime), ma questo sembra dare false se dateTime è uguale a fine.
Soluzione
L'approccio più semplice sarebbe quella di creare un nuovo intervallo che è quello vecchio prorogato di un millisecondo, se avete bisogno di fare questo spesso:
Interval inclusiveInterval = interval.withEndMillis(interval.getEndMillis() + 1);
In alternativa basta usare
if (interval.contains(dateTime) || interval.getEnd().isEqual(dateTime))
(Procedimento isEqual
ignora cronologia e il fuso orario.)
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow