setEndRule()方法语法:
public void setEndRule(int en_mm, int en_dd, int en_time); public void setEndRule(int en_mm, int en_dd, int en_dow, int en_time); public void setEndRule(int en_mm, int en_dd,int en_dow, int en_time, boolean status);
setEndRule()方法在java.util包中可用。
setEndRule(int en_mm,int en_dd,int en_time)方法用于将DST(夏令时)的结束规则设置为一个月中的给定固定日期(dd)。
setEndRule(int en_mm,int en_dd,int en_dow,int en_time)方法用于设置DST(夏令时)的结束规则。
setEndRule(int en_mm,int en_dd,int en_dow,int en_time,boolean status)方法用于将DST(夏令时)的结束规则设置为较早的工作日(dow)或一个月中给定日期(dd)之后。
这些方法在设置结束规则时可能会引发异常。
IllegalArgumentException:当任何一个参数不在范围内时,可能引发此异常。
这些是非静态方法,只能通过类对象访问,如果尝试使用类名称访问这些方法,则会收到错误消息。
参数:
在第一种情况下,setEndRule(int en_mm,int en_dd,int en_time)
int en_mm –表示夏令时结束的月份。
int en_dd –表示夏令时结束的月份。
int en_time –表示DST的结束时间。
在第二种情况下,setEndRule(int en_mm,int en_dd,int en_dow,int en_time),
int en_mm –表示夏令时结束的月份。
int en_dd –表示夏令时结束的月份。
int en_dow –表示夏令时。
int en_time –表示DST的结束时间。
在第二种情况下,setEndRule(int en_mm,int en_dd,int en_dow,int en_time,boolean status),
int en_mm –表示夏令时结束的月份。
int en_dd –表示夏令时结束的月份。
int en_dow –表示夏令时。
int en_time –表示DST的结束时间。
布尔状态–设置为true,然后此规则选择在en_dd或之后的第一个en_dow,否则该规则选择在en_dd或之前的最后一个en_dow。
返回值:
在所有情况下,该方法的返回类型均为空–它不返回任何内容。
示例
//Java程序演示示例
//的setEndRule()的SimpleTimeZone的方法
import java.util.*;
public class SetEndRuleOfSimpleTimeZone {
public static void main(String args[]) {
//实例化SimpleTimeZone对象
SimpleTimeZone s_tz1 = new SimpleTimeZone(360, "FRANCE");
SimpleTimeZone s_tz2 = new SimpleTimeZone(760, "JAPAN");
SimpleTimeZone s_tz3 = new SimpleTimeZone(39800000, "US",
Calendar.APRIL, 6, -Calendar.MONDAY, 7200000, Calendar.OCTOBER, -1,
Calendar.MONDAY, 7200000, 3600000);
//通过使用setEndRule()方法用于
//将DST结束规则设置为固定日期
s_tz1.setEndRule(Calendar.JUNE, Calendar.MONDAY, 3800000);
//通过使用setEndRule()方法用于
//之前的一个工作日
//或在给定日期之后
s_tz2.setEndRule(Calendar.JUNE, Calendar.MONDAY, 2, 3800000, false);
//通过使用setEndRule()方法用于
//设置DST结束规则
s_tz3.setEndRule(Calendar.JUNE, Calendar.MONDAY, 2, 3800000);
//显示SimpleTimeZone-
System.out.print("s_tz1.setEndRule(Calendar.JUNE, Calendar.MONDAY,3800000): ");
System.out.println(s_tz1);
System.out.print("s_tz2.setEndRule(Calendar.JUNE, Calendar.MONDAY,3800000,false): ");
System.out.println(s_tz1);
System.out.print("s_tz3.setEndRule(Calendar.JUNE, Calendar.MONDAY,2,3800000): ");
System.out.println(s_tz1);
}
}输出结果
s_tz1.setEndRule(Calendar.JUNE, Calendar.MONDAY,3800000): java.util.SimpleTimeZone[id=FRANCE,offset=360,dstSavings=3600000,useDaylight=false,startYear=0,startMode=0,startMonth=0,startDay=0,startDayOfWeek=0,startTime=0,startTimeMode=0,endMode=1,endMonth=5,endDay=2,endDayOfWeek=0,endTime=3800000,endTimeMode=0] s_tz2.setEndRule(Calendar.JUNE, Calendar.MONDAY,3800000,false): java.util.SimpleTimeZone[id=FRANCE,offset=360,dstSavings=3600000,useDaylight=false,startYear=0,startMode=0,startMonth=0,startDay=0,startDayOfWeek=0,startTime=0,startTimeMode=0,endMode=1,endMonth=5,endDay=2,endDayOfWeek=0,endTime=3800000,endTimeMode=0] s_tz3.setEndRule(Calendar.JUNE, Calendar.MONDAY,2,3800000): java.util.SimpleTimeZone[id=FRANCE,offset=360,dstSavings=3600000,useDaylight=false,startYear=0,startMode=0,startMonth=0,startDay=0,startDayOfWeek=0,startTime=0,startTimeMode=0,endMode=1,endMonth=5,endDay=2,endDayOfWeek=0,endTime=3800000,endTimeMode=0]