Java SimpleTimeZone setEndRule(int, int, int)方法及示例
Java中SimpleTimeZone类的setEndRule(int endofMonth , int endofDay , int endofTime )方法用于将日光节约时间的特定规则设置为某个月份内的固定日期。
语法
public void setEndRule(int endofMonth, 
                            int endofDay, 
                            int endofTime)
参数: 该方法需要三个参数。
- endofMonth : 这是一个整数类型的参数,指的是夏令时的结束月份。
 - endofDay : 这是一个整数类型,指的是日光节约时间的结束日。
 - endofTime : 这是一个整数类型,指的是日光节约时间的结束时间。
 
返回值: 该方法不返回任何值。
下面的程序说明了Java中setEndRule()方法的使用:
例1 :
// Java code to demonstrate
// setEndRule() method
  
import java.util.*;
  
public class SimpleTimeZone_Demo {
    public static void main(String[] args)
    {
  
        // Creating SimpleTimeZone object
        SimpleTimeZone simtimeobj
            = new SimpleTimeZone(100, "GMT");
  
        // Displaying the Initial value
        System.out.println(
            "Initial value: " + simtimeobj);
  
        // Setting an EnDRule
        simtimeobj.setEndRule(Calendar.APRIL,
                              28, 3600000);
  
        // Displaying the New value
        System.out.println(
            "New value: " + simtimeobj);
    }
}
输出:
Initial value: java.util.SimpleTimeZone[id=GMT, offset=100, dstSavings=3600000,
useDaylight=false, startYear=0, startMode=0, startMonth=0, startDay=0, startDayOfWeek=0,
startTime=0, startTimeMode=0, endMode=0, endMonth=0, endDay=0, endDayOfWeek=0, endTime=0,
endTimeMode=0]
New value: java.util.SimpleTimeZone[id=GMT, offset=100, dstSavings=3600000,
useDaylight=false, startYear=0, startMode=0, startMonth=0, startDay=0, startDayOfWeek=0,
startTime=0, startTimeMode=0, endMode=1, endMonth=3, endDay=28, endDayOfWeek=0,
endTime=3600000, endTimeMode=0]
例2 :
// Java code to demonstrate
// setEndRule() method
  
import java.util.*;
  
public class SimpleTimeZone_Demo {
    public static void main(String[] args)
    {
  
        // Creating SimpleTimeZone object
        SimpleTimeZone simtimeobj
            = new SimpleTimeZone(120, "GMT");
  
        // Displaying the Initial value
        System.out.println(
            "Initial value: " + simtimeobj);
  
        // Setting an EnDRule
        simtimeobj.setEndRule(Calendar.JANUARY,
                              15, 3600000);
  
        // Displaying the New value
        System.out.println(
            "New value: " + simtimeobj);
    }
}
输出:
Initial value: java.util.SimpleTimeZone[id=GMT, offset=120, dstSavings=3600000,
useDaylight=false, startYear=0, startMode=0, startMonth=0, startDay=0, startDayOfWeek=0,
startTime=0, startTimeMode=0, endMode=0, endMonth=0, endDay=0, endDayOfWeek=0,
endTime=0, endTimeMode=0]
New value: java.util.SimpleTimeZone[id=GMT, offset=120, dstSavings=3600000,
useDaylight=false, startYear=0, startMode=0, startMonth=0, startDay=0, startDayOfWeek=0,
startTime=0, startTimeMode=0, endMode=1, endMonth=0, endDay=15, endDayOfWeek=0,
endTime=3600000, endTimeMode=0]
参考: https://docs.oracle.com/javase/10/docs/api/java/util/SimpleTimeZone.html#setEndRule(int,int,int)
极客教程