本文整理了Java中java.time.temporal.TemporalQueries.zoneId()
方法的一些代码示例,展示了TemporalQueries.zoneId()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。TemporalQueries.zoneId()
方法的具体详情如下:
包路径:java.time.temporal.TemporalQueries
类名称:TemporalQueries
方法名:zoneId
[英]A strict query for the ZoneId.
This queries a TemporalAccessor for the zone. The zone is only returned if the date-time conceptually contains a ZoneId. It will not be returned if the date-time only conceptually has an ZoneOffset. Thus a ZonedDateTime will return the result of getZone(), but an OffsetDateTime will return null.
In most cases, applications should use #ZONE as this query is too strict.
The result from JDK classes implementing TemporalAccessor is as follows:
LocalDate returns null
LocalTime returns null
LocalDateTime returns null
ZonedDateTime returns the associated zone
OffsetTime returns null
OffsetDateTime returns null
ChronoLocalDate returns null
ChronoLocalDateTime returns null
ChronoZonedDateTime returns the associated zone
Era returns null
DayOfWeek returns null
Month returns null
Year returns null
YearMonth returns null
MonthDay returns null
ZoneOffset returns null
Instant returns null
[中]对ZoneId的严格查询。
这将查询区域的临时助理。仅当日期时间概念上包含ZoneId时,才会返回zone。如果日期时间仅在概念上具有区域偏移,则不会返回。因此,ZonedDateTime将返回getZone()的结果,而OffsetDateTime将返回null。
在大多数情况下,应用程序应该使用#ZONE,因为这个查询太严格了。
JDK类实现TemporalAccessor的结果如下:
LocalDate返回null
LocalTime返回null
LocalDateTime返回null
ZoneDateTime返回关联的区域
OffsetTime返回null
OffsetDateTime返回null
ChronoLocalDate返回null
ChronoLocalDateTime返回null
ChronoZonedDateTime返回关联的区域
Era返回空值
DayOfWeek返回null
月份返回空值
年份返回空值
YearMonth返回空值
MonthDay返回空值
ZoneOffset返回null
即时返回空值
代码示例来源:origin: neo4j/neo4j
static ZoneId parseZoneName( String zoneName )
{
ZoneId parsedName;
try
{
parsedName = ZONE_NAME_PARSER.parse( zoneName.replace( ' ', '_' ) ).query( TemporalQueries.zoneId() );
}
catch ( DateTimeParseException e )
{
throw new TemporalParseException( "Invalid value for TimeZone: " + e.getMessage(), e.getParsedString(),
e.getErrorIndex(), e );
}
return parsedName;
}
代码示例来源:origin: neo4j/neo4j
public static ZoneId parseZoneOffsetOrZoneName( String zoneName )
{
Matcher matcher = OFFSET.matcher( zoneName );
if ( matcher.matches() )
{
return parseOffset( matcher );
}
try
{
return ZONE_NAME_PARSER.parse( zoneName.replace( ' ', '_' ) ).query( TemporalQueries.zoneId() );
}
catch ( DateTimeParseException e )
{
throw new TemporalParseException( "Invalid value for TimeZone: " + e.getMessage(), e.getParsedString(),
e.getErrorIndex(), e );
}
}
代码示例来源:origin: stanfordnlp/CoreNLP
try {
TemporalAccessor datetime = formatter.parse(value);
ZoneId parsedTimezone = datetime.query(TemporalQueries.zoneId());
ZoneOffset parsedOffset = datetime.query(TemporalQueries.offset());
if (parsedTimezone != null) {
代码示例来源:origin: embulk/embulk
private OffsetDateTime buildOffsetDateTime(final TemporalAccessor given) throws TimestampParseException {
final ZoneId givenZoneId = given.query(TemporalQueries.zoneId());
if (givenZoneId != null) {
throw new TimestampParseException("Non-offset zone IDs are unaccepted in 'java:' formats: " + this.pattern);
代码示例来源:origin: com.github.seratch/java-time-backport
public ZoneId queryFrom(TemporalAccessor temporal) {
ZoneId zone = temporal.query(TemporalQueries.zoneId());
return (zone != null && zone instanceof ZoneOffset == false ? zone : null);
}
};
代码示例来源:origin: com.github.seratch/java-time-backport
@SuppressWarnings("unchecked")
@Override
public <R> R query(TemporalQuery<R> query) {
if (query == TemporalQueries.zoneId()) {
return (R) ZoneId.this;
}
return super.query(query);
}
});
代码示例来源:origin: com.github.seratch/java-time-backport
@Override
public <R> R query(TemporalQuery<R> query) {
if (query == TemporalQueries.zoneId() || query == TemporalQueries.chronology() || query == TemporalQueries.precision()) {
return null;
}
return query.queryFrom(this);
}
代码示例来源:origin: com.github.seratch/java-time-backport
@SuppressWarnings("unchecked")
@Override
public <R> R query(TemporalQuery<R> query) {
if (query == TemporalQueries.chronology()) {
return (R) chrono;
}
if (query == TemporalQueries.zoneId() || query == TemporalQueries.zone()) {
return (R) zone;
}
return super.query(query);
}
代码示例来源:origin: org.neo4j/neo4j-values
static ZoneId parseZoneName( String zoneName )
{
ZoneId parsedName;
try
{
parsedName = ZONE_NAME_PARSER.parse( zoneName.replace( ' ', '_' ) ).query( TemporalQueries.zoneId() );
}
catch ( DateTimeParseException e )
{
throw new TemporalParseException( "Invalid value for TimeZone: " + e.getMessage(), e.getParsedString(),
e.getErrorIndex(), e );
}
return parsedName;
}
代码示例来源:origin: org.neo4j/neo4j-values
public static ZoneId parseZoneOffsetOrZoneName( String zoneName )
{
Matcher matcher = OFFSET.matcher( zoneName );
if ( matcher.matches() )
{
return parseOffset( matcher );
}
try
{
return ZONE_NAME_PARSER.parse( zoneName.replace( ' ', '_' ) ).query( TemporalQueries.zoneId() );
}
catch ( DateTimeParseException e )
{
throw new TemporalParseException( "Invalid value for TimeZone: " + e.getMessage(), e.getParsedString(),
e.getErrorIndex(), e );
}
}
代码示例来源:origin: com.github.seratch/java-time-backport
@SuppressWarnings("unchecked")
@Override
public <R> R query(TemporalQuery<R> query) {
if (query == TemporalQueries.chronology()) {
return (R) effectiveChrono;
}
if (query == TemporalQueries.zoneId()) {
return (R) effectiveZone;
}
if (query == TemporalQueries.precision()) {
return temporal.query(query);
}
return query.queryFrom(this);
}
};
代码示例来源:origin: com.foreach.across/across-core
/**
* Returns the {@link ZoneId} of the given temporal.
* If the temporal supports {@link java.time.temporal.ChronoField#OFFSET_SECONDS}, those will be used to define the zone.
* Otherwise the temporal will be queried for the zone. Should no zone be provided, {@link ZoneId#systemDefault()} will be used.
*
* @param temporal to retrieve the ZoneId of
* @return the ZoneId.
*/
private ZoneId getZoneId( TemporalAccessor temporal ) {
if ( temporal.isSupported( OFFSET_SECONDS ) ) {
return ZoneOffset.ofTotalSeconds( Math.toIntExact( temporal.getLong( OFFSET_SECONDS ) ) );
}
ZoneId zone = temporal.query( TemporalQueries.zoneId() );
return ZoneOffset.of( zone != null ? zone.getId() : zoneId.getId(), ZoneId.SHORT_IDS );
}
代码示例来源:origin: com.github.seratch/java-time-backport
@SuppressWarnings("unchecked")
@Override
public <R> R query(TemporalQuery<R> query) {
if (query == TemporalQueries.precision()) {
return (R) ChronoUnit.ERAS;
}
if (query == TemporalQueries.chronology() || query == TemporalQueries.zone() ||
query == TemporalQueries.zoneId() || query == TemporalQueries.offset() ||
query == TemporalQueries.localDate() || query == TemporalQueries.localTime()) {
return null;
}
return query.queryFrom(this);
}
代码示例来源:origin: com.github.seratch/java-time-backport
@SuppressWarnings("unchecked")
@Override
public <R> R query(TemporalQuery<R> query) {
if (query == TemporalQueries.precision()) {
return (R) ChronoUnit.ERAS;
}
if (query == TemporalQueries.chronology() || query == TemporalQueries.zone() ||
query == TemporalQueries.zoneId() || query == TemporalQueries.offset() ||
query == TemporalQueries.localDate() || query == TemporalQueries.localTime()) {
return null;
}
return query.queryFrom(this);
}
代码示例来源:origin: com.github.seratch/java-time-backport
@SuppressWarnings("unchecked")
@Override
public <R> R query(TemporalQuery<R> query) {
if (query == TemporalQueries.precision()) {
return (R) ChronoUnit.ERAS;
}
if (query == TemporalQueries.chronology() || query == TemporalQueries.zone() ||
query == TemporalQueries.zoneId() || query == TemporalQueries.offset() ||
query == TemporalQueries.localDate() || query == TemporalQueries.localTime()) {
return null;
}
return query.queryFrom(this);
}
代码示例来源:origin: com.github.seratch/java-time-backport
@SuppressWarnings("unchecked")
@Override
public <R> R query(TemporalQuery<R> query) {
if (query == TemporalQueries.precision()) {
return (R) ChronoUnit.ERAS;
}
if (query == TemporalQueries.chronology() || query == TemporalQueries.zone() ||
query == TemporalQueries.zoneId() || query == TemporalQueries.offset() ||
query == TemporalQueries.localDate() || query == TemporalQueries.localTime()) {
return null;
}
return query.queryFrom(this);
}
代码示例来源:origin: com.github.seratch/java-time-backport
@SuppressWarnings("unchecked")
@Override
public <R> R query(TemporalQuery<R> query) {
if (query == TemporalQueries.precision()) {
return (R) ChronoUnit.ERAS;
}
if (query == TemporalQueries.chronology() || query == TemporalQueries.zone() ||
query == TemporalQueries.zoneId() || query == TemporalQueries.offset() ||
query == TemporalQueries.localDate() || query == TemporalQueries.localTime()) {
return null;
}
return query.queryFrom(this);
}
代码示例来源:origin: kousen/java_8_recipes
@Test
public void queries() {
assertEquals(DAYS, LocalDate.now().query(precision()));
assertEquals(NANOS, LocalTime.now().query(precision()));
ZoneOffset offset = ZonedDateTime.now().getOffset();
ZoneOffset query = ZonedDateTime.now().query(offset());
assertEquals(offset, query);
assertEquals(ZoneId.systemDefault(), ZonedDateTime.now().query(zone()));
assertEquals(ZoneId.systemDefault(), ZonedDateTime.now().query(zoneId()));
}
代码示例来源:origin: com.github.seratch/java-time-backport
@SuppressWarnings("unchecked")
@Override
public <R> R query(TemporalQuery<R> query) {
if (query == TemporalQueries.chronology()) {
return (R) getChronology();
} else if (query == TemporalQueries.precision()) {
return (R) ChronoUnit.DAYS;
} else if (query == TemporalQueries.localDate()) {
return (R) LocalDate.ofEpochDay(toEpochDay());
} else if (query == TemporalQueries.localTime() || query == TemporalQueries.zone() ||
query == TemporalQueries.zoneId() || query == TemporalQueries.offset()) {
return null;
}
return super.query(query);
}
代码示例来源:origin: com.github.seratch/java-time-backport
@SuppressWarnings("unchecked")
@Override
public <R> R query(TemporalQuery<R> query) {
if (query == TemporalQueries.chronology()) {
return (R) getChronology();
} else if (query == TemporalQueries.precision()) {
return (R) NANOS;
} else if (query == TemporalQueries.localDate()) {
return (R) LocalDate.ofEpochDay(toLocalDate().toEpochDay());
} else if (query == TemporalQueries.localTime()) {
return (R) toLocalTime();
} else if (query == TemporalQueries.zone() || query == TemporalQueries.zoneId() || query == TemporalQueries.offset()) {
return null;
}
return super.query(query);
}
内容来源于网络,如有侵权,请联系作者删除!