ZonedDateTime minusNanos() method in Java with Examples

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)



