R
从查询返回的类型
@FunctionalInterface public interface TemporalQuery<R>
查询是从时间对象中提取信息的一个关键工具。他们的存在使得查询过程,允许不同的方法,根据策略设计模式。例子可能是一个查询,检查日期是否是在2月29日之前的一天,或计算的天数到你的下一个生日。
的TemporalField
界面提供查询时态对象的另一种机制。该接口是有限的long
返回。相比之下,查询可以返回任何类型。
有使用TemporalQuery
两等效的方法。首先是方法调用这个接口直接。二是用TemporalAccessor.query(TemporalQuery)
:
这两条线是等价的,但第二种方法是建议时间=这个问题。queryfrom(时间);时间=时间查询(这个问题);建议使用第二种方法,
query(TemporalQuery)
,因为它是一个更清晰的读码。
最常见的实现方法的引用,如LocalDate::from
和ZoneId::from
。额外的普通查询提供在TemporalQueries
静态方法。
Modifier and Type | Method and Description |
---|---|
R |
queryFrom(TemporalAccessor temporal)
查询指定的时间对象。
|
R queryFrom(TemporalAccessor temporal)
这样,使用在实现类中封装的逻辑查询指定的时间对象来返回一个对象。例子可能是一个查询,检查日期是否是在2月29日之前的一天,或计算的天数到你的下一个生日。
使用这种方法有两个等效的方法。首先是直接调用这个方法。二是用TemporalAccessor.query(TemporalQuery)
:
这两条线是等价的,但第二种方法是建议时间=这个问题。queryfrom(时间);时间=时间查询(这个问题);建议使用第二种方法,
query(TemporalQuery)
,因为它是一个更清晰的读码。
TemporalAccessor
。输入对象不能被更改。
输入的时间对象可能是在其他的日历系统中。实现可以选择的文件与其他日历系统兼容,或拒绝非异时空对象的querying the chronology
。
这种方法可以从多个线程中调用。当调用时它必须是线程安全的。
temporal
-查询时间的对象,不为空
DateTimeException
如果无法查询
ArithmeticException
如果数值溢出时
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.