minusNanos() method of a ZonedDateTime class used to subtract the number of nanoseconds from this ZonedDateTime and return a copy of ZonedDateTime after subtraction.This method works on the instant timeline and subtracting one nanosecond return the timeline of one nanosecond earlier. Note that this method is a different approach to that used by days, months and years. This instance is immutable and unaffected by this method call.
Syntax:
public ZonedDateTime minusNanos(long nanoseconds)
Parameters: This method accepts a single parameter nanoseconds which represents the nanoseconds to subtract, It can be negative.
Return value: This method returns a ZonedDateTime based on this date-time with the nanoseconds subtracted.
Exception: This method throws DateTimeException if the result exceeds the supported date range.
Below programs illustrate the minusNanos() method:
Program 1:
// Java program to demonstrate // ZonedDateTime.minusNanos() method import java.time.*; public class GFG { public static void main(String[] args) { // create a ZonedDateTime object ZonedDateTime zoneddatetime = ZonedDateTime.parse( "2018-12-06T19:21:12.123+05:30[Asia/Calcutta]" ); // print instance System.out.println( "ZonedDateTime before" + " subtracting nanoseconds: " + zoneddatetime); // subtract 30000000 nanoseconds ZonedDateTime returnvalue = zoneddatetime.minusNanos( 30000000 ); // print result System.out.println( "ZonedDateTime after " + " subtracting 30000000 nanoseconds: " + returnvalue); } } |
ZonedDateTime before subtracting nanoseconds: 2018-12-06T19:21:12.123+05:30[Asia/Calcutta]
ZonedDateTime after subtracting 30000000 nanoseconds: 2018-12-06T19:21:12.093+05:30[Asia/Calcutta]
Program 2:
// Java program to demonstrate // ZonedDateTime.minusNanos() method import java.time.*; public class GFG { public static void main(String[] args) { // create a ZonedDateTime object ZonedDateTime zoneddatetime = ZonedDateTime.parse( "2018-10-25T23:12:31.123+02:00[Europe/Paris]" ); // print instance System.out.println( "ZonedDateTime before" + " subtracting nanoseconds: " + zoneddatetime); // subtract 52000000 nanoseconds ZonedDateTime returnvalue = zoneddatetime.minusNanos( 52000000 ); // print result System.out.println( "ZonedDateTime after " + " subtracting 52000000 nanoseconds: " + returnvalue); } } |
ZonedDateTime before subtracting nanoseconds: 2018-10-25T23:12:31.123+02:00[Europe/Paris]
ZonedDateTime after subtracting 52000000 nanoseconds: 2018-10-25T23:12:31.071+02:00[Europe/Paris]
Reference: https://docs.oracle.com/javase/10/docs/api/java/time/ZonedDateTime.html#minusNanos(long)