Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Do we have a TimeSpan sort of class in Java

I was just wondering if there is a need of TimeSpan in java.util so that I can define how much hours,minutes and seconds are there in between these two times.

From this TimeSpan we can have a time interval between two times. like

TimeSpan getTimeSpan( Date before, Date after ){...} 

or

long timeSpan = System.currentTimeMillis(); // ... long job timeSpan = System.currentTimeMillis() - timeSpan;  TimeSpan ts = new TimeSpan(timeSpan); 

and with this TimeSpan we can use it in SimpleDateFormat.

SimpleDateFormat format = new SimpleDateFormat("HH:mm:ss"); format.format( timsSpan ); 

I am not sure if this is already been implemented in Java but yet undiscovered by me.

like image 370
Talha Ahmed Khan Avatar asked Jul 05 '11 11:07

Talha Ahmed Khan


1 Answers

With JDK 8 date-time libraries in SDK has been enriched and you can use

Duration or Period

Interval from JodaTime will do..

A time interval represents a period of time between two instants. Intervals are inclusive of the start instant and exclusive of the end. The end instant is always greater than or equal to the start instant.

Intervals have a fixed millisecond duration. This is the difference between the start and end instants. The duration is represented separately by ReadableDuration. As a result, intervals are not comparable. To compare the length of two intervals, you should compare their durations.

An interval can also be converted to a ReadablePeriod. This represents the difference between the start and end points in terms of fields such as years and days.

Interval is thread-safe and immutable.

like image 171
jmj Avatar answered Sep 16 '22 12:09

jmj