public class SimpleTimeZone extends TimeZone
SimpleTimeZone是
TimeZone表示使用一个时区与公历的一个具体的子类。该类保持了从时间偏移的偏移,称为原始偏移,并开始和结束规则的日光节约时间计划。因为它只有单值,它不能处理从格林威治标准时间和夏令时时间偏移的历史变迁,除了那
setStartYear方法可以指定年夏时制开始时间安排的影响。
构建一个日光节约时间SimpleTimeZone,日程安排可以用一套规则,规则和规则开始。当日光节约时间开始或结束的一天是由一个月,一天,一个星期的价值观相结合。一个月的价值是由一个日历MONTH字段值来表示,如Calendar.MARCH。星期值一天的日历DAY_OF_WEEK值表示,如SUNDAY。价值组合的含义如下。
MARCH,天月1日星期0。DAY_OF_WEEK字段值。例如,指定四月的第二个星期日,APRIL集月,天月8日星期-SUNDAY。MARCH集月,天月21日一周-WEDNESDAY。DAY_OF_WEEK值天月1。例如,指定十月的最后一个星期日,集月OCTOBER,每周一天到SUNDAY和天月1。WALL_TIME,
STANDARD_TIME和
UTC_TIME。例如,如果夏令时结束在凌晨两点在墙上时钟时间,它可以在7200000毫秒的
WALL_TIME模式规定。在这种情况下,一个结束规则的墙上时钟时间意味着与白天的时间相同的东西。
以下是构建时间区域对象的参数的例子。
// Base GMT offset: -8:00
// DST starts: at 2:00am in standard time
// on the first Sunday in April
// DST ends: at 2:00am in daylight time
// on the last Sunday in October
// Save: 1 hour
SimpleTimeZone(-28800000,
"America/Los_Angeles",
Calendar.APRIL, 1, -Calendar.SUNDAY,
7200000,
Calendar.OCTOBER, -1, Calendar.SUNDAY,
7200000,
3600000)
// Base GMT offset: +1:00
// DST starts: at 1:00am in UTC time
// on the last Sunday in March
// DST ends: at 1:00am in UTC time
// on the last Sunday in October
// Save: 1 hour
SimpleTimeZone(3600000,
"Europe/Paris",
Calendar.MARCH, -1, Calendar.SUNDAY,
3600000, SimpleTimeZone.UTC_TIME,
Calendar.OCTOBER, -1, Calendar.SUNDAY,
3600000, SimpleTimeZone.UTC_TIME,
3600000)
这些参数的规则也适用于规则的方法,如
setStartRule。
Calendar,
GregorianCalendar,
TimeZone,
Serialized Form
| Modifier and Type | Field and Description |
|---|---|
static int |
STANDARD_TIME
一个指定为标准时间的开始或结束时间的模式。
|
static int |
UTC_TIME
一开始或结束时间指定为UTC模式不变。
|
static int |
WALL_TIME
指定为壁时钟时间指定的开始或结束时间的模式。
|
| Constructor and Description |
|---|
SimpleTimeZone(int rawOffset, String ID)
构建一个与给定的基准时区偏移GMT时区ID没有日光节约时间simpletimezone。
|
SimpleTimeZone(int rawOffset, String ID, int startMonth, int startDay, int startDayOfWeek, int startTime, int endMonth, int endDay, int endDayOfWeek, int endTime)
构建了一个与给定的基础simpletimezone时区偏移GMT时区ID和规则出发,夏令时结束。
|
SimpleTimeZone(int rawOffset, String ID, int startMonth, int startDay, int startDayOfWeek, int startTime, int endMonth, int endDay, int endDayOfWeek, int endTime, int dstSavings)
构建了一个与给定的基础simpletimezone时区偏移GMT时区ID和规则出发,夏令时结束。
|
SimpleTimeZone(int rawOffset, String ID, int startMonth, int startDay, int startDayOfWeek, int startTime, int startTimeMode, int endMonth, int endDay, int endDayOfWeek, int endTime, int endTimeMode, int dstSavings)
构建了一个与给定的基础simpletimezone时区偏移GMT时区ID和规则出发,夏令时结束。
|
| Modifier and Type | Method and Description |
|---|---|
Object |
clone()
返回该
SimpleTimeZone实例克隆。
|
boolean |
equals(Object obj)
比较两
SimpleTimeZone对象平等。
|
int |
getDSTSavings()
返回在日光节约时间内时钟是先进的毫秒的时间。
|
int |
getOffset(int era, int year, int month, int day, int dayOfWeek, int millis)
返回UTC与本地时间毫秒的差异,考虑到原偏移和日光节约的效果,在指定的日期和时间。
|
int |
getOffset(long date)
返回该时区的UTC偏移量在给定的时间。
|
int |
getRawOffset()
获取此时区的时间偏移量偏移量。
|
int |
hashCode()
产生的不是对象的哈希码。
|
boolean |
hasSameRules(TimeZone other)
返回
true如果该区域具有相同的规则和抵消另一区。
|
boolean |
inDaylightTime(Date date)
如果指定日期在日光节约时间。
|
boolean |
observesDaylightTime()
返回
true如果这
SimpleTimeZone遵守夏时制。
|
void |
setDSTSavings(int millisSavedDuringDST)
设置在日光节约时间内时钟的时钟的时间的毫秒数。
|
void |
setEndRule(int endMonth, int endDay, int endTime)
将日光节约时间结束规则设置为一个月内的固定日期。
|
void |
setEndRule(int endMonth, int endDay, int endDayOfWeek, int endTime)
设置日光节约时间结束规则。
|
void |
setEndRule(int endMonth, int endDay, int endDayOfWeek, int endTime, boolean after)
设置夏令时结束规则平日给定日期一个月内,如之前或之后的第一个星期一后,或第八。
|
void |
setRawOffset(int offsetMillis)
设置偏移的基本时间区
|
void |
setStartRule(int startMonth, int startDay, int startTime)
将日光节约时间开始规则设置为一个月内的固定日期。
|
void |
setStartRule(int startMonth, int startDay, int startDayOfWeek, int startTime)
设置日光节约时间开始规则。
|
void |
setStartRule(int startMonth, int startDay, int startDayOfWeek, int startTime, boolean after)
设置夏令时开始规则平日给定日期一个月内,如之前或之后的第一个星期一后,或第八。
|
void |
setStartYear(int year)
设置日光节约时间开始年。
|
String |
toString()
返回这个时区的字符串表示形式。
|
boolean |
useDaylightTime()
查询如果这个时区使用日光节约时间。
|
getAvailableIDs, getAvailableIDs, getDefault, getDisplayName, getDisplayName, getDisplayName, getDisplayName, getID, getTimeZone, getTimeZone, setDefault, setID, toZoneIdpublic static final int WALL_TIME
public static final int STANDARD_TIME
public static final int UTC_TIME
public SimpleTimeZone(int rawOffset,
String ID)
rawOffset基地的时区偏移量在毫秒时间。
ID -时区名称,是考虑到这种情况。
public SimpleTimeZone(int rawOffset,
String ID,
int startMonth,
int startDay,
int startDayOfWeek,
int startTime,
int endMonth,
int endDay,
int endDayOfWeek,
int endTime)
startTime和
endTime指定是在墙上时钟时间代表。的日光节约量被假定为3600000毫秒(即,一个小时)。此构造函数等价于:
SimpleTimeZone(rawOffset,
ID,
startMonth,
startDay,
startDayOfWeek,
startTime,
SimpleTimeZone.WALL_TIME,
endMonth,
endDay,
endDayOfWeek,
endTime,
SimpleTimeZone.WALL_TIME,
3600000)
rawOffset -给定的基地从GMT.时区偏移
ID -时区ID给这个对象。
startMonth -夏令时开始月。月是一个
MONTH字段值(0。例如,一月的0。
startDay的白昼之月,日光节约时间开始。看到这个参数的特殊情况的类描述。
startDayOfWeek -周夏令时开始的一天。看到这个参数的特殊情况的类描述。
startTime -夏令时开始在当地的挂钟时间(以毫秒为单位的一天),这是在这种情况下,当地标准时间。
endMonth -夏令时结束。月是一个
MONTH字段值(0。例如,十月的9。
endDay的白昼之月,夏令时结束。看到这个参数的特殊情况的类描述。
endDayOfWeek -夏令时结束一周。看到这个参数的特殊情况的类描述。
endTime -日光节约地方挂钟时间结束的时间(以毫秒为单位,一天之内),在这种情况下,当地夏令时间。
IllegalArgumentException -如果一个月,一天,一周,或时间参数超出范围的开始或结束的规则
public SimpleTimeZone(int rawOffset,
String ID,
int startMonth,
int startDay,
int startDayOfWeek,
int startTime,
int endMonth,
int endDay,
int endDayOfWeek,
int endTime,
int dstSavings)
startTime和
endTime是墙上的时钟时间代表。此构造函数等价于:
SimpleTimeZone(rawOffset,
ID,
startMonth,
startDay,
startDayOfWeek,
startTime,
SimpleTimeZone.WALL_TIME,
endMonth,
endDay,
endDayOfWeek,
endTime,
SimpleTimeZone.WALL_TIME,
dstSavings)
rawOffset -给定的基地从GMT.时区偏移
ID -时区ID给这个对象。
startMonth -夏令时开始月。月是一个
MONTH字段值(0。例如,一月的0。
startDay的白昼之月,日光节约时间开始。看到这个参数的特殊情况的类描述。
startDayOfWeek -。看到这个参数的特殊情况的类描述。
startTime -夏令时开始在当地的挂钟的时间,这是在这种情况下,当地标准时间。
endMonth -夏令时结束。月是一个
MONTH字段值(0。例如,十月的9。
endDay的白昼之月,夏令时结束。看到这个参数的特殊情况的类描述。
endDayOfWeek -夏令时结束一周。看到这个参数的特殊情况的类描述。
endTime -日光节约地方挂钟时间结束的时间,这是在这种情况下,当地夏令时间。
dstSavings -日光节约时间在毫秒保存时间。
IllegalArgumentException -如果一个月,一天,一周,或时间参数超出范围的开始或结束的规则
public SimpleTimeZone(int rawOffset,
String ID,
int startMonth,
int startDay,
int startDayOfWeek,
int startTime,
int startTimeMode,
int endMonth,
int endDay,
int endDayOfWeek,
int endTime,
int endTimeMode,
int dstSavings)
startTime和
endTime模式。模式指定
wall time或
standard time或
UTC time。
rawOffset -给定的基地从GMT.时区偏移
ID -时区ID给这个对象。
startMonth -夏令时开始月。月是一个
MONTH字段值(0。例如,一月的0。
startDay的白昼之月,日光节约时间开始。看到这个参数的特殊情况的类描述。
startDayOfWeek -周夏令时开始的一天。看到这个参数的特殊情况的类描述。
startTime -在指定的时间模式
startTimeMode夏时制开始时间。
startTimeMode -指定的开始时间开始时间模式。
endMonth -夏令时结束。月是一个
MONTH字段值(0。例如,十月的9。
endDay的白昼之月,夏令时结束。看到这个参数的特殊情况的类描述。
endDayOfWeek -夏令时结束一周。看到这个参数的特殊情况的类描述。
endTime -日光节约时间
endTimeMode模式指定的结束时间。
endTimeMode -指定结束时间:结束时间模式
dstSavings -日光节约时间在毫秒保存时间。
IllegalArgumentException -如果一个月,一天,一周,更多的时间或时间参数超出范围的开始或结束的规则,或者如果一个时间模式值无效。
WALL_TIME,
STANDARD_TIME,
UTC_TIME
public void setStartYear(int year)
year -夏时制起始年。
public void setStartRule(int startMonth,
int startDay,
int startDayOfWeek,
int startTime)
setStartRule(Calendar.APRIL, 1, Calendar.SUNDAY, 2*60*60*1000);
startMonth -夏令时开始月。月是一个
MONTH字段值(0。例如,一月的0。
startDay的白昼之月,日光节约时间开始。看到这个参数的特殊情况的类描述。
startDayOfWeek -周夏令时开始的一天。看到这个参数的特殊情况的类描述。
startTime -夏令时开始在当地的挂钟的时间,这是在这种情况下,当地标准时间。
IllegalArgumentException -如果
startMonth,
startDay,
startDayOfWeek,或
startTime参数超出范围
public void setStartRule(int startMonth,
int startDay,
int startTime)
setStartRule(startMonth, startDay, 0, startTime)
startMonth -夏令时开始月。月是一个
MONTH字段值(0。例如,一月的0。
startDay的白昼之月,日光节约时间开始。
startTime -夏令时开始在当地的挂钟的时间,这是在这种情况下,当地标准时间。看到这个参数的特殊情况的类描述。
IllegalArgumentException -如果
startMonth,
startDayOfMonth,或
startTime参数超出范围
public void setStartRule(int startMonth,
int startDay,
int startDayOfWeek,
int startTime,
boolean after)
startMonth -夏令时开始月。月是一个
MONTH字段值(0。例如,一月的0。
startDay的白昼之月,日光节约时间开始。
startDayOfWeek -周夏令时开始的一天。
startTime -夏令时开始在当地的挂钟的时间,这是在这种情况下,当地标准时间。
after -如果是真的,这一规则选择
dayOfMonth后的第一个
dayOfWeek。如果是错的,这条规则选择在
dayOfMonth最后
dayOfWeek。
IllegalArgumentException -如果
startMonth,
startDay,
startDayOfWeek,或
startTime参数超出范围
public void setEndRule(int endMonth,
int endDay,
int endDayOfWeek,
int endTime)
setEndRule(Calendar.OCTOBER, -1, Calendar.SUNDAY, 2*60*60*1000);
endMonth -夏令时结束。月是一个
MONTH字段值(0。例如,十月的9。
endDay的白昼之月,夏令时结束。看到这个参数的特殊情况的类描述。
endDayOfWeek -夏令时结束一周。看到这个参数的特殊情况的类描述。
endTime -日光节约地方挂钟时间结束的时间(以毫秒为单位,一天之内),在这种情况下,当地夏令时间。
IllegalArgumentException -如果
endMonth,
endDay,
endDayOfWeek,或
endTime参数超出范围
public void setEndRule(int endMonth,
int endDay,
int endTime)
setEndRule(endMonth, endDay, 0, endTime)
endMonth -夏令时结束。月是一个
MONTH字段值(0。例如,十月的9。
endDay的白昼之月,夏令时结束。
endTime -日光节约地方挂钟时间结束的时间(以毫秒为单位,一天之内),在这种情况下,当地夏令时间。
IllegalArgumentException -
endMonth,
endDay,或
endTime参数超出范围
public void setEndRule(int endMonth,
int endDay,
int endDayOfWeek,
int endTime,
boolean after)
endMonth -夏令时结束。月是一个
MONTH字段值(0。例如,十月的9。
endDay的白昼之月,夏令时结束。
endDayOfWeek -夏令时结束一周。
endTime -日光节约地方挂钟时间结束的时间(以毫秒为单位,一天之内),在这种情况下,当地夏令时间。
after -如果是真的,这一规则选择后或
endDay第一
endDayOfWeek。如有虚假,本规则选择在本月的最后一
endDayOfWeek
endDay。
IllegalArgumentException -
endMonth,
endDay,
endDayOfWeek,或
endTime参数超出范围
public int getOffset(long date)
getOffset 方法重写,继承类
TimeZone
date -时间的时区偏移量被发现
Calendar.ZONE_OFFSET,
Calendar.DST_OFFSET
public int getOffset(int era,
int year,
int month,
int day,
int dayOfWeek,
int millis)
GregorianCalendar对象作为其基础的日历,如确定闰年。不要使用此方法的结果与其他非默认
GregorianCalendar日历。
注意:在一般情况下,客户应使用日历。得到(zone_offset)+日历。得到(dst_offset)而不是调用此方法。
getOffset 方法重写,继承类
TimeZone
era -给定日期的时代。
year在给定日期的年份。
month在给定日期的月。月是0。例如,一月的0。
day -。
dayOfWeek给定日期的星期。
millis标准日毫秒。
IllegalArgumentException -
era,
month,
day,
dayOfWeek,或
millis参数超出范围
Calendar.ZONE_OFFSET,
Calendar.DST_OFFSET
public int getRawOffset()
getRawOffset 方法重写,继承类
TimeZone
setRawOffset(int)
public void setRawOffset(int offsetMillis)
setRawOffset 方法重写,继承类
TimeZone
offsetMillis -给定的基本的时区偏移GMT。
getRawOffset()
public void setDSTSavings(int millisSavedDuringDST)
millisSavedDuringDST -毫秒时间提前与标准时间的数字时,日光节约时间的规则是有效的。一个积极的数字,通常一个小时(3600000)。
getDSTSavings()
public int getDSTSavings()
getDSTSavings 方法重写,继承类
TimeZone
setDSTSavings(int)
public boolean useDaylightTime()
useDaylightTime 方法重写,继承类
TimeZone
TimeZone.inDaylightTime(Date),
Calendar.DST_OFFSET
public boolean observesDaylightTime()
observesDaylightTime 方法重写,继承类
TimeZone
true
SimpleTimeZone遵守夏时制;
false否则。
TimeZone.useDaylightTime(),
TimeZone.inDaylightTime(Date),
Calendar.DST_OFFSET
public boolean inDaylightTime(Date date)
inDaylightTime 方法重写,继承类
TimeZone
date -给定的日期。
public Object clone()
SimpleTimeZone实例克隆。
public int hashCode()
hashCode 方法重写,继承类
Object
Object.equals(java.lang.Object),
System.identityHashCode(java.lang.Object)
public boolean equals(Object obj)
SimpleTimeZone对象平等。
equals 方法重写,继承类
Object
obj -
SimpleTimeZone对象进行比较。
obj是这
SimpleTimeZone对象相同的真;否则为false。
Object.hashCode(),
HashMap
public boolean hasSameRules(TimeZone other)
true如果该区域具有相同的规则和抵消另一区。
hasSameRules 方法重写,继承类
TimeZone
other的时区对象进行比较
true如果给定的区域是一个simpletimezone具有相同的规则和抵消这一个
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.