java.time.ZoneOffset

1 java.time.ZoneOffset介绍

Java ZoneOffset类用于表示距UTC时区的固定区域偏移量。它继承了ZoneId类并实现Comparable接口。

ZoneOffset类声明三个常量:

  • MAX:这是支持的最大区域偏移量。
  • MIN:这是支持的最小区域偏移量。
  • UTC:这是UTC的时区偏移常数。

2 java.time.ZoneOffset声明

我们来看一下java.time.ZoneOffset类的声明。

public final class ZoneOffset extends ZoneId implements TemporalAccessor, TemporalAdjuster, Comparable<ZoneOffset>, Serializable  

3 java.time.ZoneOffset方法

方法 描述
Temporal adjustInto(Temporal temporal) 调整指定的时态对象以使其具有与此对象相同的偏移量。
int compareTo(ZoneOffset other) 将此偏移量按降序与另一个偏移量进行比较。
boolean equals(Object obj) 检查此偏移量是否等于另一个偏移量。
static ZoneOffset from(TemporalAccessor temporal) 从temporal对象获取ZoneOffset的实例。
int get(TemporalField field) 从此偏移量中获取指定字段的int值。
String getId() 获取规范化区域偏移ID。
long getLong(TemporalField field) 从此偏移量中获取指定字段的long值。
ZoneRules getRules() 获取关联的时区规则。
int getTotalSeconds() 获取以秒为单位的总区域偏移量。
int hashCode() 此偏移量的哈希码。
boolean isSupported(TemporalField field) 检查是否支持指定的字段。
static ZoneOffset of(String offsetId) 使用ID获取ZoneOffset的实例。
static ZoneOffset ofHours(int hours) 使用以小时为单位的偏移量获取ZoneOffset的实例。
static ZoneOffset ofHoursMinutes(int hours, int minutes) 使用小时和分钟的偏移量获取ZoneOffset的实例。
static ZoneOffset ofHoursMinutesSeconds(int hours, int minutes, int seconds) 使用小时,分钟和秒的偏移量获取ZoneOffset的实例。
static ZoneOffset ofTotalSeconds(int totalSeconds) 获取ZoneOffset的实例,该实例指定以秒为单位的总偏移量。
<R> R query(TemporalQuery<R> query) 使用指定的查询查询此偏移量。
ValueRange range(TemporalField field) 获取指定字段的有效值范围。
String toString() 使用标准化ID将此偏移量输出为String。

4 java.time.ZoneOffset案例1

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
import java.time.*;  
import java.time.temporal.Temporal;  
public class ZoneOffsetExample1 {  
  public static void main(String[] args) {  
    ZoneOffset zone = ZoneOffset.UTC;  
    Temporal temp = zone.adjustInto(ZonedDateTime.now());  
    System.out.println(temp);  
  }  
} 

输出结果为:

2017-01-29T12:43:00.702+05:30[Asia/Calcutta]

5 java.time.ZoneOffset案例2

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
import java.time.ZoneOffset;  
public class ZoneOffsetExample2 {  
  public static void main(String[] args) {  
    ZoneOffset zone = ZoneOffset.ofHours(5);  
    System.out.println(zone);  
  }  
}  

输出结果为;

+05:00

 

热门文章

优秀文章