Open In App

ChronoLocalDateTime query() method in Java with Examples

Last Updated : 28 May, 2019
Improve
Improve
Like Article
Like
Save
Share
Report

query() method of an ChronoLocalDateTime interface is used to query this ChronoLocalDateTime using the specified query as parameter. The TemporalQuery object passed as parameter define the logic to be used to obtain the result from this ChronoLocalDateTime.

Syntax:

default <R> R query(TemporalQuery<R> query)

Parameters: This method accepts only one parameter query which is the query to invoke.

Return value: This method returns the query result, null may be returned.

Exception:This method throws following Exceptions:

  • DateTimeException – if unable to query .
  • ArithmeticException – if numeric overflow occurs.

Below programs illustrate the query() method:
Program 1:




// Java program to demonstrate
// ChronoLocalDateTime.query() method
  
import java.time.*;
import java.time.chrono.*;
import java.time.temporal.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create ChronoLocalDateTime object
        ChronoLocalDateTime lt
            = LocalDateTime.parse(
                "2018-10-25T23:12:31.123");
  
        // apply query() method
        // of ChronoLocalDateTime interface
        String value
            = lt.query(
                    TemporalQueries.precision())
                  .toString();
  
        // print the result
        System.out.println("Precision value"
                           + " for ChronoLocalDateTime is "
                           + value);
    }
}


Output:

Precision value for ChronoLocalDateTime is Nanos

Program 2: Showing if query did not found the required object then it returns null.




// Java program to demonstrate
// ChronoLocalDateTime.query() method
  
import java.time.*;
import java.time.chrono.*;
import java.time.temporal.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create ChronoLocalDateTime object
        ChronoLocalDateTime lt
            = LocalDateTime.parse(
                "2018-10-25T23:12:31.123");
  
        // apply query() method
        // of ChronoLocalDateTime interface
        // and print the result
        System.out.println("offset value "
                           + "for ChronoLocalDateTime is "
                           + lt.query(TemporalQueries.offset()));
    }
}


Output:

offset value for ChronoLocalDateTime is null

References: https://docs.oracle.com/javase/9/docs/api/java/time/chrono/ChronoLocalDateTime.html#query-java.time.temporal.TemporalQuery-



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads