[Javalist] date diff

Roodie istvan.farkas at gmail.com
2020. Már. 10., K, 11:01:37 UTC


Óraátállítás :-)

R

Freemail <laja at freemail.hu> ezt írta (időpont: 2020. márc. 10., K, 12:00):

> Sziasztok!
>
> Egy számomra elég fura dologba futottam bele.
>
> A feladat alapvetően két dátum közti napok száma. Régi progi, úgyhogy
> még Date van.
> Az időszak legyen idén február elseje és április vége, és a kezdő és
> záró napok is számítanak. Ami elvárunk, az a 90 (29 + 31 +30).
>
> Date start = FORMAT_DATETIME.parse( "2020.02.01 00:00:00");
> Date end   = FORMAT_DATETIME.parse( "2020.05.01 00:00:00");
> long diff = end.getTime() - start.getTime();
> System.out.println( TimeUnit.DAYS.convert(diff, TimeUnit.MILLISECONDS) +
> " nap" );
>
> Az eredmény: 89 nap!!!
>
> Először a TimeUnit-ra gyanakodtam, de nem az a ludas.
>
> System.out.println( start.getTime() + " - " + end.getTime() + " = " +
> diff + " = " + (diff/1000/60/60) + " óra");
>
> Az eredmény: 2159 óra, pedig 2160-nak kellene lennie!
>
> Aztán a szökőnapra gyanakodtam, ezért megnéztem hónaponként:
>
> System.out.println( (FORMAT_DATETIME.parse( "2020.03.01
> 00:00:00").getTime()-FORMAT_DATETIME.parse( "2020.02.01
> 00:00:00").getTime())/1000/60/60 );
> System.out.println( (FORMAT_DATETIME.parse( "2020.04.01
> 00:00:00").getTime()-FORMAT_DATETIME.parse( "2020.03.01
> 00:00:00").getTime())/1000/60/60 );
> System.out.println( (FORMAT_DATETIME.parse( "2020.05.01
> 00:00:00").getTime()-FORMAT_DATETIME.parse( "2020.04.01
> 00:00:00").getTime())/1000/60/60 );
>
> Az eredméynek: 696, 743, 721. A március a ludas, mert ott 744 órának
> kellene lennie!
>
> Át tudom hidalni a problémát:
> System.out.println( Math.round(diff/1000/60/60/24.0) + " nap" );
>
> De akkor se értem, miért lesz az adott példában a március 1 órával
> rövidebb?
> Valakinek van magyarázata vagy ötlete?
>
> (Oracle féle java 1.8)
>
> Laja
>
>
> _______________________________________________
> Javalist mailing list
> Javalist at lists.javaforum.hu
> http://lists.javaforum.hu/mailman/listinfo/javalist
>


-- 
Roodie
--------- következő rész ---------
Egy csatolt HTML állomány át lett konvertálva...
URL: <http://lists.javaforum.hu/pipermail/javalist/attachments/20200310/b6878729/attachment.htm>


További információk a(z) Javalist levelezőlistáról