📌  相关文章
📜  Java中的 ChronoLocalDate query() 方法及示例

📅  最后修改于: 2022-05-13 01:54:23.585000             🧑  作者: Mango

Java中的 ChronoLocalDate query() 方法及示例

ChronoLocalDate接口的query()方法,用于使用指定的查询作为参数查询此 ChronoLocalDate。作为参数传递的 TemporalQuery 对象定义了用于从该 ChronoLocalDate 获取结果的逻辑。

句法:

public  R 
    query(TemporalQuery query)

参数:此方法只接受一个参数查询,即要调用的查询。

返回值:该方法返回查询结果,可能返回null。

异常:此方法抛出以下异常:

  • DateTimeException – 如果无法查询。
  • ArithmeticException – 如果发生数字溢出。

下面的程序说明了 query() 方法:

方案一:

// Java program to demonstrate
// ChronoLocalDate.query() method
  
import java.time.*;
import java.time.temporal.*;
import java.time.chrono.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create ChronoLocalDate object
        ChronoLocalDate ld = LocalDate.parse("2018-12-31");
  
        // apply the query method of ChronoLocalDate class
        String value
            = ld.query(TemporalQueries.precision())
                  .toString();
  
        // print the result
        System.out.println("Precision value for ChronoLocalDate is "
                           + value);
    }
}
输出:
Precision value for ChronoLocalDate is Days

程序 2:显示如果查询没有找到所需的对象,则返回 null。

// Java program to demonstrate
// ChronoLocalDate.query() method
  
import java.time.*;
import java.time.temporal.*;
import java.time.chrono.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create ChronoLocalDate object
        ChronoLocalDate ld = LocalDate.parse("2018-12-31");
  
        // apply query method of ChronoLocalDate class
        // print the result
        System.out.println("Zone value for ChronoLocalDate is "
                           + ld.query(
                                 TemporalQueries.offset()));
    }
}
输出:
Zone value for ChronoLocalDate is null

参考:
https://docs.oracle.com/javase/9/docs/api/ Java/time/chrono/ChronoLocalDate.html#query-java.time.temporal.TemporalQuery-