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

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

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

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

句法:

public  R query(TemporalQuery query)

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

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

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

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

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

方案一:

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

方案二:

// Java program to demonstrate
// ZonedDateTime.query() method
  
import java.time.*;
import java.time.temporal.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create ZonedDateTime object
        ZonedDateTime zlt
            = ZonedDateTime.parse(
                "2018-10-25T23:12:31.123+02:00[Europe/Paris]");
  
        // apply query method of ZonedDateTime class
        // print the result
        System.out.println("offset value for "
                           + "ZonedDateTime is "
                           + zlt.query(
                                 TemporalQueries.offset()));
    }
}
输出:
offset value for ZonedDateTime is +02:00

参考资料: https: Java Java.time.temporal.TemporalQuery)