1. Duration Class Overview
A Duration is most suitable in situations that measure machine-based time, such as code that uses an Instant object.A Duration object is measured in seconds or nanoseconds and does not use date-based constructs such as years, months, and days, though the class provides methods that convert to days, hours, and minutes. A Duration can have a negative value if it is created with an endpoint that occurs before the start point. Examples of this guide are available on Github.
Duration class provides lots of APIs/Methods to deal with duration. In this post, we will discuss a few important and frequently used Duration APIs/Methods with Examples.
The class diagram shows a list of APIs Duration provides.
Let's discuss the following methods with examples
- static Duration between(Temporal startInclusive, Temporal endExclusive)- long get(TemporalUnit unit)
- boolean isNegative()
- boolean isZero()
- Duration minus(Duration duration)
- Duration plus(Duration duration)
2. Duration Class Examples
2.1 Java Duration Example: between() method
import java.time.*;
import java.time.temporal.ChronoUnit;
public class DurationExample {
public static void main(String[] args) {
Duration d = Duration.between(LocalTime.NOON,LocalTime.MAX);
System.out.println(d.get(ChronoUnit.SECONDS));
}
}
Output:
43199
2.2 Java Duration Example: get() method
import java.time.*;
import java.time.temporal.ChronoUnit;
public class DurationExample {
public static void main(String[] args) {
Duration d = Duration.between(LocalTime.NOON,LocalTime.MAX);
System.out.println(d.get(ChronoUnit.SECONDS));
}
}
Output:
43199
86399
2.3 Java Duration Example: isNegative() method
import java.time.*;
public class DurationExample {
public static void main(String[] args) {
Duration d1 = Duration.between(LocalTime.MAX,LocalTime.NOON);
System.out.println(d1.isNegative());
Duration d2 = Duration.between(LocalTime.NOON,LocalTime.MAX);
System.out.println(d2.isNegative());
}
}
Output:
true
false
2.4 Java Duration Example: minus() method
import java.time.*;
public class DurationExample {
public static void main(String[] args) {
Duration d1 = Duration.between(LocalTime.NOON,LocalTime.MAX);
System.out.println(d1.getSeconds());
Duration d2 = d1.minus(d1);
System.out.println(d2.getSeconds());
}
}
Output:
43199
0
2.5 Java Duration Example: plus() method
import java.time.*;
public class DurationExample {
public static void main(String[] args) {
Duration d1 = Duration.between(LocalTime.NOON,LocalTime.MAX);
System.out.println(d1.getSeconds());
Duration d2 = d1.plus(d1);
System.out.println(d2.getSeconds());
}
}
Output:
43199
86399
2. Related Java 8 Date and Time Posts
3. References
Free Spring Boot Tutorial | Full In-depth Course | Learn Spring Boot in 10 Hours
Watch this course on YouTube at Spring Boot Tutorial | Fee 10 Hours Full Course
Comments
Post a Comment