← 返回首页
TemporalQuery (Java SE 26 & JDK 26)
JavaScript is disabled on your browser.
Contents  
  1. Description
  2. Method Summary
  3. Method Details
    1. queryFrom(TemporalAccessor)
Hide sidebar  Show sidebar

Interface TemporalQuery<R>

Type Parameters: R - the type returned from the query Functional Interface: This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
@FunctionalInterface public interface TemporalQuery<R>
Strategy for querying a temporal object.

Queries are a key tool for extracting information from temporal objects. They exist to externalize the process of querying, permitting different approaches, as per the strategy design pattern. Examples might be a query that checks if the date is the day before February 29th in a leap year, or calculates the number of days to your next birthday.

The TemporalField interface provides another mechanism for querying temporal objects. That interface is limited to returning a long. By contrast, queries can return any type.

There are two equivalent ways of using a TemporalQuery. The first is to invoke the method on this interface directly. The second is to use TemporalAccessor.query(TemporalQuery): // these two lines are equivalent, but the second approach is recommended temporal = thisQuery.queryFrom(temporal); temporal = temporal.query(thisQuery); It is recommended to use the second approach, query(TemporalQuery), as it is a lot clearer to read in code.

The most common implementations are method references, such as LocalDate::from and ZoneId::from. Additional common queries are provided as static methods in TemporalQueries.

Implementation Requirements: This interface places no restrictions on the mutability of implementations, however immutability is strongly recommended. Since: 1.8

Scripting on this page tracks web page traffic, but does not change the content in any way.