java.util.SimpleTimeZone.setStartRule() 方法

描述

setStartRule(int startMonth,int startDay,int startDayOfWeek,int startTime,boolean after) 方法用于将夏令时开始规则设置为一个月内给定日期之前或之后的工作日。


声明

以下是 java.util.SimpleTimeZone.setStartRule() 方法的声明。

public void setStartRule(int startMonth,int startDay,int startDayOfWeek,int startTime,boolean after)

参数

  • startMonth − 夏令时开始月份。

  • startDay − 夏令时开始的月份。

  • startDayOfWeek − 从星期几开始的夏令时。

  • startTime − 本地挂钟时间的夏令时开始时间。

  • after − 如果为真,则此规则选择 dayOfMonth 或之后的第一天 dayOfWeek。 如果为 false,则此规则选择 dayOfMonth 或之前的最后 dayOfWeek。


返回值

NA


异常

IllegalArgumentException − 如果 startMonth、startDay、startDayOfWeek 或 startTime 参数超出范围,则会抛出此错误。


示例

下面的例子展示了 java.util.SimpleTimeZone.setStartRule() 的用法。

package com.tutorialspoint;

import java.util.*;

public class SimpleTimeZoneDemo {
   public static void main( String args[] ) {
   
      // create simple time zone object
      SimpleTimeZone stobj = new SimpleTimeZone(820,"US");

      // checking initial value     
      System.out.println("Initial value: " + stobj);

      // setting start rule   
      stobj.setStartRule( Calendar.MAY, 2,2, 3600000,true);   

      // checking the new value      
      System.out.println("Final value : " + stobj);
   }     
}

让我们编译并运行上面的程序,这将产生以下结果.

Initial value: java.util.SimpleTimeZone[id = US,offset = 820,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]

Final value : java.util.SimpleTimeZone[id = US,offset = 820,dstSavings = 3600000,
useDaylight = false,startYear = 0,startMode = 3,startMonth = 4,startDay = 2,
startDayOfWeek = 2,startTime = 3600000,startTimeMode = 0,endMode = 0,
endMonth = 0,endDay = 0,endDayOfWeek = 0,endTime = 0,endTimeMode = 0]dMonth = 0,
endDay = 0,endDayOfWeek = 0,
endTime = 0,endTimeMode = 0]